/*! modernizr 3.1.0 (Custom Build) | MIT *
 * http://modernizr.com/download/?-backgroundsize-bgsizecover-borderradius-boxshadow-cssanimations-csstransforms-csstransforms3d-csstransitions-touchevents !*/
! function (e, n, t) {
	function s(e) {
		var n = C.className,
			t = Modernizr._config.classPrefix || "";
		if (S && (n = n.baseVal), Modernizr._config.enableJSClass) {
			var s = new RegExp("(^|\\s)" + t + "no-js(\\s|$)");
			n = n.replace(s, "$1" + t + "js$2")
		}
		Modernizr._config.enableClasses && (n += " " + t + e.join(" " + t), S ? C.className.baseVal = n : C.className = n)
	}

	function o(e, n) {
		return typeof e === n
	}

	function r() {
		var e, n, t, s, r, i, a;
		for (var f in x) {
			if (e = [], n = x[f], n.name && (e.push(n.name.toLowerCase()), n.options && n.options.aliases && n.options.aliases.length))
				for (t = 0; t < n.options.aliases.length; t++) e.push(n.options.aliases[t].toLowerCase());
			for (s = o(n.fn, "function") ? n.fn() : n.fn, r = 0; r < e.length; r++) i = e[r], a = i.split("."), 1 === a.length ? Modernizr[a[0]] = s : (!Modernizr[a[0]] || Modernizr[a[0]] instanceof Boolean || (Modernizr[a[0]] = new Boolean(Modernizr[a[0]])), Modernizr[a[0]][a[1]] = s), y.push((s ? "" : "no-") + a.join("-"))
		}
	}

	function i() {
		return "function" != typeof n.createElement ? n.createElement(arguments[0]) : S ? n.createElementNS.call(n, "http://www.w3.org/2000/svg", arguments[0]) : n.createElement.apply(n, arguments)
	}

	function a() {
		var e = n.body;
		return e || (e = i(S ? "svg" : "body"), e.fake = !0), e
	}

	function f(e, t, s, o) {
		var r, f, u, l, d = "modernizr",
			p = i("div"),
			c = a();
		if (parseInt(s, 10))
			for (; s--;) u = i("div"), u.id = o ? o[s] : d + (s + 1), p.appendChild(u);
		return r = i("style"), r.type = "text/css", r.id = "s" + d, (c.fake ? c : p).appendChild(r), c.appendChild(p), r.styleSheet ? r.styleSheet.cssText = e : r.appendChild(n.createTextNode(e)), p.id = d, c.fake && (c.style.background = "", c.style.overflow = "hidden", l = C.style.overflow, C.style.overflow = "hidden", C.appendChild(c)), f = t(p, e), c.fake ? (c.parentNode.removeChild(c), C.style.overflow = l, C.offsetHeight) : p.parentNode.removeChild(p), !!f
	}

	function u(e, n) {
		return !!~("" + e).indexOf(n)
	}

	function l(e) {
		return e.replace(/([a-z])-([a-z])/g, function (e, n, t) {
			return n + t.toUpperCase()
		}).replace(/^-/, "")
	}

	function d(e, n) {
		return function () {
			return e.apply(n, arguments)
		}
	}

	function p(e, n, t) {
		var s;
		for (var r in e)
			if (e[r] in n) return t === !1 ? e[r] : (s = n[e[r]], o(s, "function") ? d(s, t || n) : s);
		return !1
	}

	function c(e) {
		return e.replace(/([A-Z])/g, function (e, n) {
			return "-" + n.toLowerCase()
		}).replace(/^ms-/, "-ms-")
	}

	function m(n, s) {
		var o = n.length;
		if ("CSS" in e && "supports" in e.CSS) {
			for (; o--;)
				if (e.CSS.supports(c(n[o]), s)) return !0;
			return !1
		}
		if ("CSSSupportsRule" in e) {
			for (var r = []; o--;) r.push("(" + c(n[o]) + ":" + s + ")");
			return r = r.join(" or "), f("@supports (" + r + ") { #modernizr { position: absolute; } }", function (e) {
				return "absolute" == getComputedStyle(e, null).position
			})
		}
		return t
	}

	function v(e, n, s, r) {
		function a() {
			d && (delete j.style, delete j.modElem)
		}
		if (r = o(r, "undefined") ? !1 : r, !o(s, "undefined")) {
			var f = m(e, s);
			if (!o(f, "undefined")) return f
		}
		for (var d, p, c, v, h, g = ["modernizr", "tspan"]; !j.style;) d = !0, j.modElem = i(g.shift()), j.style = j.modElem.style;
		for (c = e.length, p = 0; c > p; p++)
			if (v = e[p], h = j.style[v], u(v, "-") && (v = l(v)), j.style[v] !== t) {
				if (r || o(s, "undefined")) return a(), "pfx" == n ? v : !0;
				try {
					j.style[v] = s
				} catch (y) {}
				if (j.style[v] != h) return a(), "pfx" == n ? v : !0
			}
		return a(), !1
	}

	function h(e, n, t, s, r) {
		var i = e.charAt(0).toUpperCase() + e.slice(1),
			a = (e + " " + P.join(i + " ") + i).split(" ");
		return o(n, "string") || o(n, "undefined") ? v(a, n, s, r) : (a = (e + " " + E.join(i + " ") + i).split(" "), p(a, n, t))
	}

	function g(e, n, s) {
		return h(e, t, t, n, s)
	}
	var y = [],
		x = [],
		b = {
			_version: "3.1.0",
			_config: {
				classPrefix: "",
				enableClasses: !0,
				enableJSClass: !0,
				usePrefixes: !0
			},
			_q: [],
			on: function (e, n) {
				var t = this;
				setTimeout(function () {
					n(t[e])
				}, 0)
			},
			addTest: function (e, n, t) {
				x.push({
					name: e,
					fn: n,
					options: t
				})
			},
			addAsyncTest: function (e) {
				x.push({
					name: null,
					fn: e
				})
			}
		},
		Modernizr = function () {};
	Modernizr.prototype = b, Modernizr = new Modernizr;
	var C = n.documentElement,
		S = "svg" === C.nodeName.toLowerCase(),
		w = b._config.usePrefixes ? " -webkit- -moz- -o- -ms- ".split(" ") : [];
	b._prefixes = w;
	var _ = "CSS" in e && "supports" in e.CSS,
		T = "supportsCSS" in e;
	Modernizr.addTest("supports", _ || T);
	var z = b.testStyles = f;
	Modernizr.addTest("touchevents", function () {
		var t;
		if ("ontouchstart" in e || e.DocumentTouch && n instanceof DocumentTouch) t = !0;
		else {
			var s = ["@media (", w.join("touch-enabled),("), "heartz", ")", "{#modernizr{top:9px;position:absolute}}"].join("");
			z(s, function (e) {
				t = 9 === e.offsetTop
			})
		}
		return t
	});
	var k = "Moz O ms Webkit",
		P = b._config.usePrefixes ? k.split(" ") : [];
	b._cssomPrefixes = P;
	var E = b._config.usePrefixes ? k.toLowerCase().split(" ") : [];
	b._domPrefixes = E;
	var N = {
		elem: i("modernizr")
	};
	Modernizr._q.push(function () {
		delete N.elem
	});
	var j = {
		style: N.elem.style
	};
	Modernizr._q.unshift(function () {
		delete j.style
	}), b.testAllProps = h, b.testAllProps = g, Modernizr.addTest("cssanimations", g("animationName", "a", !0)), Modernizr.addTest("backgroundsize", g("backgroundSize", "100%", !0)), Modernizr.addTest("csstransitions", g("transition", "all", !0)), Modernizr.addTest("csstransforms3d", function () {
		var e = !!g("perspective", "1px", !0),
			n = Modernizr._config.usePrefixes;
		if (e && (!n || "webkitPerspective" in C.style)) {
			var t;
			Modernizr.supports ? t = "@supports (perspective: 1px)" : (t = "@media (transform-3d)", n && (t += ",(-webkit-transform-3d)")), t += "{#modernizr{left:9px;position:absolute;height:5px;margin:0;padding:0;border:0}}", z(t, function (n) {
				e = 9 === n.offsetLeft && 5 === n.offsetHeight
			})
		}
		return e
	}), Modernizr.addTest("bgsizecover", g("backgroundSize", "cover")), Modernizr.addTest("borderradius", g("borderRadius", "0px", !0)), Modernizr.addTest("boxshadow", g("boxShadow", "1px 1px", !0)), Modernizr.addTest("csstransforms", function () {
		return -1 === navigator.userAgent.indexOf("Android 2.") && g("transform", "scale(1)", !0)
	}), r(), s(y), delete b.addTest, delete b.addAsyncTest;
	for (var A = 0; A < Modernizr._q.length; A++) Modernizr._q[A]();
	e.Modernizr = Modernizr
}(window, document);
/*
 * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
 *
 */
jQuery.easing.jswing = jQuery.easing.swing;
jQuery.extend(jQuery.easing, {
	def: "easeOutQuad",
	swing: function (e, f, a, h, g) {
		return jQuery.easing[jQuery.easing.def](e, f, a, h, g)
	},
	easeInQuad: function (e, f, a, h, g) {
		return h * (f /= g) * f + a
	},
	easeOutQuad: function (e, f, a, h, g) {
		return -h * (f /= g) * (f - 2) + a
	},
	easeInOutQuad: function (e, f, a, h, g) {
		if ((f /= g / 2) < 1) {
			return h / 2 * f * f + a
		}
		return -h / 2 * ((--f) * (f - 2) - 1) + a
	},
	easeInCubic: function (e, f, a, h, g) {
		return h * (f /= g) * f * f + a
	},
	easeOutCubic: function (e, f, a, h, g) {
		return h * ((f = f / g - 1) * f * f + 1) + a
	},
	easeInOutCubic: function (e, f, a, h, g) {
		if ((f /= g / 2) < 1) {
			return h / 2 * f * f * f + a
		}
		return h / 2 * ((f -= 2) * f * f + 2) + a
	},
	easeInQuart: function (e, f, a, h, g) {
		return h * (f /= g) * f * f * f + a
	},
	easeOutQuart: function (e, f, a, h, g) {
		return -h * ((f = f / g - 1) * f * f * f - 1) + a
	},
	easeInOutQuart: function (e, f, a, h, g) {
		if ((f /= g / 2) < 1) {
			return h / 2 * f * f * f * f + a
		}
		return -h / 2 * ((f -= 2) * f * f * f - 2) + a
	},
	easeInQuint: function (e, f, a, h, g) {
		return h * (f /= g) * f * f * f * f + a
	},
	easeOutQuint: function (e, f, a, h, g) {
		return h * ((f = f / g - 1) * f * f * f * f + 1) + a
	},
	easeInOutQuint: function (e, f, a, h, g) {
		if ((f /= g / 2) < 1) {
			return h / 2 * f * f * f * f * f + a
		}
		return h / 2 * ((f -= 2) * f * f * f * f + 2) + a
	},
	easeInSine: function (e, f, a, h, g) {
		return -h * Math.cos(f / g * (Math.PI / 2)) + h + a
	},
	easeOutSine: function (e, f, a, h, g) {
		return h * Math.sin(f / g * (Math.PI / 2)) + a
	},
	easeInOutSine: function (e, f, a, h, g) {
		return -h / 2 * (Math.cos(Math.PI * f / g) - 1) + a
	},
	easeInExpo: function (e, f, a, h, g) {
		return (f == 0) ? a : h * Math.pow(2, 10 * (f / g - 1)) + a
	},
	easeOutExpo: function (e, f, a, h, g) {
		return (f == g) ? a + h : h * (-Math.pow(2, -10 * f / g) + 1) + a
	},
	easeInOutExpo: function (e, f, a, h, g) {
		if (f == 0) {
			return a
		}
		if (f == g) {
			return a + h
		}
		if ((f /= g / 2) < 1) {
			return h / 2 * Math.pow(2, 10 * (f - 1)) + a
		}
		return h / 2 * (-Math.pow(2, -10 * --f) + 2) + a
	},
	easeInCirc: function (e, f, a, h, g) {
		return -h * (Math.sqrt(1 - (f /= g) * f) - 1) + a
	},
	easeOutCirc: function (e, f, a, h, g) {
		return h * Math.sqrt(1 - (f = f / g - 1) * f) + a
	},
	easeInOutCirc: function (e, f, a, h, g) {
		if ((f /= g / 2) < 1) {
			return -h / 2 * (Math.sqrt(1 - f * f) - 1) + a
		}
		return h / 2 * (Math.sqrt(1 - (f -= 2) * f) + 1) + a
	},
	easeInElastic: function (f, h, e, l, k) {
		var i = 1.70158;
		var j = 0;
		var g = l;
		if (h == 0) {
			return e
		}
		if ((h /= k) == 1) {
			return e + l
		}
		if (!j) {
			j = k * 0.3
		}
		if (g < Math.abs(l)) {
			g = l;
			var i = j / 4
		} else {
			var i = j / (2 * Math.PI) * Math.asin(l / g)
		}
		return -(g * Math.pow(2, 10 * (h -= 1)) * Math.sin((h * k - i) * (2 * Math.PI) / j)) + e
	},
	easeOutElastic: function (f, h, e, l, k) {
		var i = 1.70158;
		var j = 0;
		var g = l;
		if (h == 0) {
			return e
		}
		if ((h /= k) == 1) {
			return e + l
		}
		if (!j) {
			j = k * 0.3
		}
		if (g < Math.abs(l)) {
			g = l;
			var i = j / 4
		} else {
			var i = j / (2 * Math.PI) * Math.asin(l / g)
		}
		return g * Math.pow(2, -10 * h) * Math.sin((h * k - i) * (2 * Math.PI) / j) + l + e
	},
	easeInOutElastic: function (f, h, e, l, k) {
		var i = 1.70158;
		var j = 0;
		var g = l;
		if (h == 0) {
			return e
		}
		if ((h /= k / 2) == 2) {
			return e + l
		}
		if (!j) {
			j = k * (0.3 * 1.5)
		}
		if (g < Math.abs(l)) {
			g = l;
			var i = j / 4
		} else {
			var i = j / (2 * Math.PI) * Math.asin(l / g)
		}
		if (h < 1) {
			return -0.5 * (g * Math.pow(2, 10 * (h -= 1)) * Math.sin((h * k - i) * (2 * Math.PI) / j)) + e
		}
		return g * Math.pow(2, -10 * (h -= 1)) * Math.sin((h * k - i) * (2 * Math.PI) / j) * 0.5 + l + e
	},
	easeInBack: function (e, f, a, i, h, g) {
		if (g == undefined) {
			g = 1.70158
		}
		return i * (f /= h) * f * ((g + 1) * f - g) + a
	},
	easeOutBack: function (e, f, a, i, h, g) {
		if (g == undefined) {
			g = 1.70158
		}
		return i * ((f = f / h - 1) * f * ((g + 1) * f + g) + 1) + a
	},
	easeInOutBack: function (e, f, a, i, h, g) {
		if (g == undefined) {
			g = 1.70158
		}
		if ((f /= h / 2) < 1) {
			return i / 2 * (f * f * (((g *= (1.525)) + 1) * f - g)) + a
		}
		return i / 2 * ((f -= 2) * f * (((g *= (1.525)) + 1) * f + g) + 2) + a
	},
	easeInBounce: function (e, f, a, h, g) {
		return h - jQuery.easing.easeOutBounce(e, g - f, 0, h, g) + a
	},
	easeOutBounce: function (e, f, a, h, g) {
		if ((f /= g) < (1 / 2.75)) {
			return h * (7.5625 * f * f) + a
		} else {
			if (f < (2 / 2.75)) {
				return h * (7.5625 * (f -= (1.5 / 2.75)) * f + 0.75) + a
			} else {
				if (f < (2.5 / 2.75)) {
					return h * (7.5625 * (f -= (2.25 / 2.75)) * f + 0.9375) + a
				} else {
					return h * (7.5625 * (f -= (2.625 / 2.75)) * f + 0.984375) + a
				}
			}
		}
	},
	easeInOutBounce: function (e, f, a, h, g) {
		if (f < g / 2) {
			return jQuery.easing.easeInBounce(e, f * 2, 0, h, g) * 0.5 + a
		}
		return jQuery.easing.easeOutBounce(e, f * 2 - g, 0, h, g) * 0.5 + h * 0.5 + a
	}
});
(function ($) {
	$.fn.running = function () {
		function n() {
			var t = $(".animateNum");
			var n = {
				top: $(window).scrollTop(),
				bottom: $(window).scrollTop() + $(window).height()
			};
			t.each(function () {
				var t = $(this).attr("data-animateTarget");
				n.top <= $(this).offset().top + $(this).height() && n.bottom >= $(this).offset().top && !$(this).data("start") && ($(this).data("start", !0), new AnimateNum({
					obj: $(this),
					target: t,
					totalTime: 1e3
				}))
			})
		};

		function b() {
			var t = $(".animateBar");
			var n = {
				top: $(window).scrollTop(),
				bottom: $(window).scrollTop() + $(window).height()
			};
			t.each(function () {
				var t = $(this).attr("data-animateTarget");
				n.top <= $(this).offset().top + $(this).height() && n.bottom >= $(this).offset().top && !$(this).data("start") && ($(this).data("start", !0), new AnimateBar({
					obj: $(this),
					target: t,
					totalTime: 1e3
				}))
			})
		};

		function p() {
			var t = $(".animatePie");
			var n = {
				top: $(window).scrollTop(),
				bottom: $(window).scrollTop() + $(window).height()
			};
			t.each(function () {
				var t = $(this).attr("data-animateTarget");
				n.top <= $(this).offset().top + $(this).height() && n.bottom >= $(this).offset().top && !$(this).data("start") && ($(this).data("start", !0), new AnimatePie({
					obj: $(this),
					target: t,
					totalTime: 1e3
				}))
			})
		};
		$(window).bind("scroll", function () {
			n();
			b();
			p()
		});

		function AnimateNum(t) {
			this.obj = t.obj, this.target = t.target.toString(), this.totalTime = t.totalTime || 1e3, this.init()
		};

		function AnimateBar(t) {
			this.obj = t.obj, this.target = t.target.toString(), this.totalTime = t.totalTime || 1e3, this.init()
		};

		function AnimatePie(t) {
			this.obj = t.obj, this.target = t.target.toString(), this.totalTime = t.totalTime || 1e3, this.init()
		};
		AnimateNum.prototype = {
			init: function () {
				return this.target ? (this.animation(), void 0) : !1
			},
			animation: function () {
				var t = this,
					i = this.target.indexOf("."),
					e = 0;
				i >= 0 && (e = this.target.length - i - 1);
				var n = this.target.replace(".", ""),
					s = this.totalTime / 30 | 0,
					a = n / s | 0,
					r = 0,
					h = 0;
				t.timer = setInterval(function () {
					r++, h += a, t.obj.html(h / Math.pow(10, e)), r >= s && (clearInterval(t.timer), t.obj.html(t.target))
				}, 30)
			}
		};
		AnimateBar.prototype = {
			init: function () {
				return this.target ? (this.animation(), void 0) : !1
			},
			animation: function () {
				var t = this,
					i = this.target.indexOf("."),
					e = 0;
				i >= 0 && (e = this.target.length - i - 1);
				var n = this.target.replace(".", ""),
					s = this.totalTime / 30 | 0,
					a = n / s | 0,
					r = 0,
					h = 0;
				t.timer = setInterval(function () {
					r++, h += a, t.obj.css('width', h / Math.pow(10, e) + '%'), r >= s && (clearInterval(t.timer), t.obj.animate({
						'width': t.target + '%'
					}))
				}, 30)
			}
		};
		AnimatePie.prototype = {
			init: function () {
				return this.target ? (this.animation(), void 0) : !1
			},
			animation: function () {
				var t = this;
				s = this.totalTime / 60 | 0;
				r = 0;
				t.i = 0;
				t.count = 0;
				t.j = 0;
				num = t.target;

				function start1() {
					t.obj.find('.pieInner span').html(t.i + 1);
					if (num == 0) return false;
					t.i = t.i + 1;
					if (t.i == num) {
						clearInterval(t.t1)
					}
					if (t.i == 50) {
						clearInterval(t.t1);
						num2 = num - 50;
						t.t2 = setInterval(start2, 1)
					};
					t.obj.find(".pieLeftInner").css("-o-transform", "rotate(" + t.i * 3.6 + "deg)");
					t.obj.find(".pieLeftInner").css("-moz-transform", "rotate(" + t.i * 3.6 + "deg)");
					t.obj.find(".pieLeftInner").css("-webkit-transform", "rotate(" + t.i * 3.6 + "deg)")
				};

				function start2() {
					t.obj.find('.pieInner span').html(50 + t.j + 1);
					if (num2 == 0) return false;
					t.j = t.j + 1;
					if (t.j == num2) {
						clearInterval(t.t2)
					}
					if (t.j == 50) {
						clearInterval(t.t2)
					};
					t.obj.find(".pieRightInner").css("-o-transform", "rotate(" + t.j * 3.6 + "deg)");
					t.obj.find(".pieRightInner").css("-moz-transform", "rotate(" + t.j * 3.6 + "deg)");
					t.obj.find(".pieRightInner").css("-webkit-transform", "rotate(" + t.j * 3.6 + "deg)")
				};
				t.t1 = setInterval(function () {
					r++;
					r >= s && (clearInterval(t.timer), start1())
				}, 30)
			}
		}
	}
})(jQuery);

(function (e) {
	"use strict";
	e.fn.counterUp = function (t) {
		var n = e.extend({
			time: 400,
			delay: 10
		}, t);
		return this.each(function () {
			var t = e(this),
				r = n,
				i = function () {
					var e = [],
						n = r.time / r.delay,
						i = t.text(),
						s = /[0-9]+,[0-9]+/.test(i);
					i = i.replace(/,/g, "");
					var o = /^[0-9]+$/.test(i),
						u = /^[0-9]+\.[0-9]+$/.test(i),
						a = u ? (i.split(".")[1] || []).length : 0;
					for (var f = n; f >= 1; f--) {
						var l = parseInt(i / n * f);
						u && (l = parseFloat(i / n * f).toFixed(a));
						if (s)
							while (/(\d+)(\d{3})/.test(l.toString())) l = l.toString().replace(/(\d+)(\d{3})/, "$1,$2");
						e.unshift(l)
					}
					t.data("counterup-nums", e);
					t.text("0");
					var c = function () {
						t.text(t.data("counterup-nums").shift());
						if (t.data("counterup-nums").length) setTimeout(t.data("counterup-func"), r.delay);
						else {
							delete t.data("counterup-nums");
							t.data("counterup-nums", null);
							t.data("counterup-func", null)
						}
					};
					t.data("counterup-func", c);
					setTimeout(t.data("counterup-func"), r.delay)
				};
			t.waypoint(i, {
				offset: "100%",
				triggerOnce: !0
			})
		})
	}
})(jQuery);

(function () {
	var t = [].indexOf || function (t) {
			for (var e = 0, n = this.length; e < n; e++) {
				if (e in this && this[e] === t) return e
			}
			return -1
		},
		e = [].slice;
	(function (t, e) {
		if (typeof define === "function" && define.amd) {
			return define("waypoints", ["jquery"], function (n) {
				return e(n, t)
			})
		} else {
			return e(t.jQuery, t)
		}
	})(this, function (n, r) {
		var i, o, l, s, f, u, a, c, h, d, p, y, v, w, g, m;
		i = n(r);
		c = t.call(r, "ontouchstart") >= 0;
		s = {
			horizontal: {},
			vertical: {}
		};
		f = 1;
		a = {};
		u = "waypoints-context-id";
		p = "resize.waypoints";
		y = "scroll.waypoints";
		v = 1;
		w = "waypoints-waypoint-ids";
		g = "waypoint";
		m = "waypoints";
		o = function () {
			function t(t) {
				var e = this;
				this.$element = t;
				this.element = t[0];
				this.didResize = false;
				this.didScroll = false;
				this.id = "context" + f++;
				this.oldScroll = {
					x: t.scrollLeft(),
					y: t.scrollTop()
				};
				this.waypoints = {
					horizontal: {},
					vertical: {}
				};
				t.data(u, this.id);
				a[this.id] = this;
				t.bind(y, function () {
					var t;
					if (!(e.didScroll || c)) {
						e.didScroll = true;
						t = function () {
							e.doScroll();
							return e.didScroll = false
						};
						return r.setTimeout(t, n[m].settings.scrollThrottle)
					}
				});
				t.bind(p, function () {
					var t;
					if (!e.didResize) {
						e.didResize = true;
						t = function () {
							n[m]("refresh");
							return e.didResize = false
						};
						return r.setTimeout(t, n[m].settings.resizeThrottle)
					}
				})
			}
			t.prototype.doScroll = function () {
				var t, e = this;
				t = {
					horizontal: {
						newScroll: this.$element.scrollLeft(),
						oldScroll: this.oldScroll.x,
						forward: "right",
						backward: "left"
					},
					vertical: {
						newScroll: this.$element.scrollTop(),
						oldScroll: this.oldScroll.y,
						forward: "down",
						backward: "up"
					}
				};
				if (c && (!t.vertical.oldScroll || !t.vertical.newScroll)) {
					n[m]("refresh")
				}
				n.each(t, function (t, r) {
					var i, o, l;
					l = [];
					o = r.newScroll > r.oldScroll;
					i = o ? r.forward : r.backward;
					n.each(e.waypoints[t], function (t, e) {
						var n, i;
						if (r.oldScroll < (n = e.offset) && n <= r.newScroll) {
							return l.push(e)
						} else if (r.newScroll < (i = e.offset) && i <= r.oldScroll) {
							return l.push(e)
						}
					});
					l.sort(function (t, e) {
						return t.offset - e.offset
					});
					if (!o) {
						l.reverse()
					}
					return n.each(l, function (t, e) {
						if (e.options.continuous || t === l.length - 1) {
							return e.trigger([i])
						}
					})
				});
				return this.oldScroll = {
					x: t.horizontal.newScroll,
					y: t.vertical.newScroll
				}
			};
			t.prototype.refresh = function () {
				var t, e, r, i = this;
				r = n.isWindow(this.element);
				e = this.$element.offset();
				this.doScroll();
				t = {
					horizontal: {
						contextOffset: r ? 0 : e.left,
						contextScroll: r ? 0 : this.oldScroll.x,
						contextDimension: this.$element.width(),
						oldScroll: this.oldScroll.x,
						forward: "right",
						backward: "left",
						offsetProp: "left"
					},
					vertical: {
						contextOffset: r ? 0 : e.top,
						contextScroll: r ? 0 : this.oldScroll.y,
						contextDimension: r ? n[m]("viewportHeight") : this.$element.height(),
						oldScroll: this.oldScroll.y,
						forward: "down",
						backward: "up",
						offsetProp: "top"
					}
				};
				return n.each(t, function (t, e) {
					return n.each(i.waypoints[t], function (t, r) {
						var i, o, l, s, f;
						i = r.options.offset;
						l = r.offset;
						o = n.isWindow(r.element) ? 0 : r.$element.offset()[e.offsetProp];
						if (n.isFunction(i)) {
							i = i.apply(r.element)
						} else if (typeof i === "string") {
							i = parseFloat(i);
							if (r.options.offset.indexOf("%") > -1) {
								i = Math.ceil(e.contextDimension * i / 100)
							}
						}
						r.offset = o - e.contextOffset + e.contextScroll - i;
						if (r.options.onlyOnScroll && l != null || !r.enabled) {
							return
						}
						if (l !== null && l < (s = e.oldScroll) && s <= r.offset) {
							return r.trigger([e.backward])
						} else if (l !== null && l > (f = e.oldScroll) && f >= r.offset) {
							return r.trigger([e.forward])
						} else if (l === null && e.oldScroll >= r.offset) {
							return r.trigger([e.forward])
						}
					})
				})
			};
			t.prototype.checkEmpty = function () {
				if (n.isEmptyObject(this.waypoints.horizontal) && n.isEmptyObject(this.waypoints.vertical)) {
					this.$element.unbind([p, y].join(" "));
					return delete a[this.id]
				}
			};
			return t
		}();
		l = function () {
			function t(t, e, r) {
				var i, o;
				r = n.extend({}, n.fn[g].defaults, r);
				if (r.offset === "bottom-in-view") {
					r.offset = function () {
						var t;
						t = n[m]("viewportHeight");
						if (!n.isWindow(e.element)) {
							t = e.$element.height()
						}
						return t - n(this).outerHeight()
					}
				}
				this.$element = t;
				this.element = t[0];
				this.axis = r.horizontal ? "horizontal" : "vertical";
				this.callback = r.handler;
				this.context = e;
				this.enabled = r.enabled;
				this.id = "waypoints" + v++;
				this.offset = null;
				this.options = r;
				e.waypoints[this.axis][this.id] = this;
				s[this.axis][this.id] = this;
				i = (o = t.data(w)) != null ? o : [];
				i.push(this.id);
				t.data(w, i)
			}
			t.prototype.trigger = function (t) {
				if (!this.enabled) {
					return
				}
				if (this.callback != null) {
					this.callback.apply(this.element, t)
				}
				if (this.options.triggerOnce) {
					return this.destroy()
				}
			};
			t.prototype.disable = function () {
				return this.enabled = false
			};
			t.prototype.enable = function () {
				this.context.refresh();
				return this.enabled = true
			};
			t.prototype.destroy = function () {
				delete s[this.axis][this.id];
				delete this.context.waypoints[this.axis][this.id];
				return this.context.checkEmpty()
			};
			t.getWaypointsByElement = function (t) {
				var e, r;
				r = n(t).data(w);
				if (!r) {
					return []
				}
				e = n.extend({}, s.horizontal, s.vertical);
				return n.map(r, function (t) {
					return e[t]
				})
			};
			return t
		}();
		d = {
			init: function (t, e) {
				var r;
				if (e == null) {
					e = {}
				}
				if ((r = e.handler) == null) {
					e.handler = t
				}
				this.each(function () {
					var t, r, i, s;
					t = n(this);
					i = (s = e.context) != null ? s : n.fn[g].defaults.context;
					if (!n.isWindow(i)) {
						i = t.closest(i)
					}
					i = n(i);
					r = a[i.data(u)];
					if (!r) {
						r = new o(i)
					}
					return new l(t, r, e)
				});
				n[m]("refresh");
				return this
			},
			disable: function () {
				return d._invoke(this, "disable")
			},
			enable: function () {
				return d._invoke(this, "enable")
			},
			destroy: function () {
				return d._invoke(this, "destroy")
			},
			prev: function (t, e) {
				return d._traverse.call(this, t, e, function (t, e, n) {
					if (e > 0) {
						return t.push(n[e - 1])
					}
				})
			},
			next: function (t, e) {
				return d._traverse.call(this, t, e, function (t, e, n) {
					if (e < n.length - 1) {
						return t.push(n[e + 1])
					}
				})
			},
			_traverse: function (t, e, i) {
				var o, l;
				if (t == null) {
					t = "vertical"
				}
				if (e == null) {
					e = r
				}
				l = h.aggregate(e);
				o = [];
				this.each(function () {
					var e;
					e = n.inArray(this, l[t]);
					return i(o, e, l[t])
				});
				return this.pushStack(o)
			},
			_invoke: function (t, e) {
				t.each(function () {
					var t;
					t = l.getWaypointsByElement(this);
					return n.each(t, function (t, n) {
						n[e]();
						return true
					})
				});
				return this
			}
		};
		n.fn[g] = function () {
			var t, r;
			r = arguments[0], t = 2 <= arguments.length ? e.call(arguments, 1) : [];
			if (d[r]) {
				return d[r].apply(this, t)
			} else if (n.isFunction(r)) {
				return d.init.apply(this, arguments)
			} else if (n.isPlainObject(r)) {
				return d.init.apply(this, [null, r])
			} else if (!r) {
				return n.error("jQuery Waypoints needs a callback function or handler option.")
			} else {
				return n.error("The " + r + " method does not exist in jQuery Waypoints.")
			}
		};
		n.fn[g].defaults = {
			context: r,
			continuous: true,
			enabled: true,
			horizontal: false,
			offset: 0,
			triggerOnce: false
		};
		h = {
			refresh: function () {
				return n.each(a, function (t, e) {
					return e.refresh()
				})
			},
			viewportHeight: function () {
				var t;
				return (t = r.innerHeight) != null ? t : i.height()
			},
			aggregate: function (t) {
				var e, r, i;
				e = s;
				if (t) {
					e = (i = a[n(t).data(u)]) != null ? i.waypoints : void 0
				}
				if (!e) {
					return []
				}
				r = {
					horizontal: [],
					vertical: []
				};
				n.each(r, function (t, i) {
					n.each(e[t], function (t, e) {
						return i.push(e)
					});
					i.sort(function (t, e) {
						return t.offset - e.offset
					});
					r[t] = n.map(i, function (t) {
						return t.element
					});
					return r[t] = n.unique(r[t])
				});
				return r
			},
			above: function (t) {
				if (t == null) {
					t = r
				}
				return h._filter(t, "vertical", function (t, e) {
					return e.offset <= t.oldScroll.y
				})
			},
			below: function (t) {
				if (t == null) {
					t = r
				}
				return h._filter(t, "vertical", function (t, e) {
					return e.offset > t.oldScroll.y
				})
			},
			left: function (t) {
				if (t == null) {
					t = r
				}
				return h._filter(t, "horizontal", function (t, e) {
					return e.offset <= t.oldScroll.x
				})
			},
			right: function (t) {
				if (t == null) {
					t = r
				}
				return h._filter(t, "horizontal", function (t, e) {
					return e.offset > t.oldScroll.x
				})
			},
			enable: function () {
				return h._invoke("enable")
			},
			disable: function () {
				return h._invoke("disable")
			},
			destroy: function () {
				return h._invoke("destroy")
			},
			extendFn: function (t, e) {
				return d[t] = e
			},
			_invoke: function (t) {
				var e;
				e = n.extend({}, s.vertical, s.horizontal);
				return n.each(e, function (e, n) {
					n[t]();
					return true
				})
			},
			_filter: function (t, e, r) {
				var i, o;
				i = a[n(t).data(u)];
				if (!i) {
					return []
				}
				o = [];
				n.each(i.waypoints[e], function (t, e) {
					if (r(i, e)) {
						return o.push(e)
					}
				});
				o.sort(function (t, e) {
					return t.offset - e.offset
				});
				return n.map(o, function (t) {
					return t.element
				})
			}
		};
		n[m] = function () {
			var t, n;
			n = arguments[0], t = 2 <= arguments.length ? e.call(arguments, 1) : [];
			if (h[n]) {
				return h[n].apply(null, t)
			} else {
				return h.aggregate.call(null, n)
			}
		};
		n[m].settings = {
			resizeThrottle: 100,
			scrollThrottle: 30
		};
		// return i.load(function () {
		// 	return n[m]("refresh")
		// })
		return i.on('load',function () {
			return n[m]("refresh")
		})
	})
}).call(this);

! function (t) {
	"use strict";
	t.fn.countUp = function (e) {
		var a = t.extend({
			time: 2e3,
			delay: 10
		}, e);
		return this.each(function () {
			var e = t(this),
				n = a,
				u = function () {
					e.data("counterupTo") || e.data("counterupTo", e.text());
					var t = parseInt(e.data("counter-time")) > 0 ? parseInt(e.data("counter-time")) : n.time,
						a = parseInt(e.data("counter-delay")) > 0 ? parseInt(e.data("counter-delay")) : n.delay,
						u = t / a,
						r = e.data("counterupTo"),
						o = [r],
						c = /[0-9]+,[0-9]+/.test(r);
					r = r.replace(/,/g, "");
					for (var d = (/^[0-9]+$/.test(r), /^[0-9]+\.[0-9]+$/.test(r)), s = d ? (r.split(".")[1] || []).length : 0, i = u; i >= 1; i--) {
						var p = parseInt(Math.round(r / u * i));
						if (d && (p = parseFloat(r / u * i).toFixed(s)), c)
							for (;
								/(\d+)(\d{3})/.test(p.toString());) p = p.toString().replace(/(\d+)(\d{3})/, "$1,$2");
						o.unshift(p)
					}
					e.data("counterup-nums", o), e.text("0");
					var f = function () {
						e.text(e.data("counterup-nums").shift()), e.data("counterup-nums").length ? setTimeout(e.data("counterup-func"), a) : (delete e.data("counterup-nums"), e.data("counterup-nums", null), e.data("counterup-func", null))
					};
					e.data("counterup-func", f), setTimeout(e.data("counterup-func"), a)
				};
			e.waypoint(u, {
				offset: "100%",
				triggerOnce: !0
			})
		})
	}
}(jQuery);

/*
	  _ _      _       _
  ___| (_) ___| | __  (_)___
 / __| | |/ __| |/ /  | / __|
 \__ \ | | (__|   < _ | \__ \
 |___/_|_|\___|_|\_(_)/ |___/
					|__/
 
  Version: 1.6.0
   Author: Ken Wheeler
  Website: http://kenwheeler.github.io
	 Docs: http://kenwheeler.github.io/slick
	 Repo: http://github.com/kenwheeler/slick
   Issues: http://github.com/kenwheeler/slick/issues
 
  */
! function (a) {
	"use strict";
	"function" == typeof define && define.amd ? define(["jquery"], a) : "undefined" != typeof exports ? module.exports = a(require("jquery")) : a(jQuery)
}(function (a) {
	"use strict";
	var b = window.Slick || {};
	b = function () {
		function c(c, d) {
			var f, e = this;
			e.defaults = {
				accessibility: !0,
				adaptiveHeight: !1,
				appendArrows: a(c),
				appendDots: a(c),
				arrows: !0,
				asNavFor: null,
				prevArrow: '<div type="button" data-role="none" class="slick-prev iconfont" aria-label="Previous" tabindex="0" role="button">&#xe601;</div>',
				nextArrow: '<div type="button" data-role="none" class="slick-next iconfont" aria-label="Next" tabindex="0" role="button">&#xe601;</div>',
				autoplay: !1,
				autoplaySpeed: 3e3,
				centerMode: !1,
				centerPadding: "50px",
				cssEase: "ease",
				customPaging: function (b, c) {
					return a('<button type="button" data-role="none" role="button" tabindex="0" />').text(c + 1)
				},
				dots: !1,
				dotsClass: "slick-dots",
				draggable: !0,
				easing: "linear",
				edgeFriction: .35,
				fade: !1,
				focusOnSelect: !1,
				infinite: !0,
				initialSlide: 0,
				lazyLoad: "ondemand",
				mobileFirst: !1,
				pauseOnHover: !0,
				pauseOnFocus: !0,
				pauseOnDotsHover: !1,
				respondTo: "window",
				responsive: null,
				rows: 1,
				rtl: !1,
				slide: "",
				slidesPerRow: 1,
				slidesToShow: 1,
				slidesToScroll: 1,
				speed: 500,
				swipe: !0,
				swipeToSlide: !1,
				touchMove: !0,
				touchThreshold: 5,
				useCSS: !0,
				useTransform: !0,
				variableWidth: !1,
				vertical: !1,
				verticalSwiping: !1,
				waitForAnimate: !0,
				zIndex: 1e3
			}, e.initials = {
				animating: !1,
				dragging: !1,
				autoPlayTimer: null,
				currentDirection: 0,
				currentLeft: null,
				currentSlide: 0,
				direction: 1,
				$dots: null,
				listWidth: null,
				listHeight: null,
				loadIndex: 0,
				$nextArrow: null,
				$prevArrow: null,
				slideCount: null,
				slideWidth: null,
				$slideTrack: null,
				$slides: null,
				sliding: !1,
				slideOffset: 0,
				swipeLeft: null,
				$list: null,
				touchObject: {},
				transformsEnabled: !1,
				unslicked: !1
			}, a.extend(e, e.initials), e.activeBreakpoint = null, e.animType = null, e.animProp = null, e.breakpoints = [], e.breakpointSettings = [], e.cssTransitions = !1, e.focussed = !1, e.interrupted = !1, e.hidden = "hidden", e.paused = !0, e.positionProp = null, e.respondTo = null, e.rowCount = 1, e.shouldClick = !0, e.$slider = a(c), e.$slidesCache = null, e.transformType = null, e.transitionType = null, e.visibilityChange = "visibilitychange", e.windowWidth = 0, e.windowTimer = null, f = a(c).data("slick") || {}, e.options = a.extend({}, e.defaults, d, f), e.currentSlide = e.options.initialSlide, e.originalSettings = e.options, "undefined" != typeof document.mozHidden ? (e.hidden = "mozHidden", e.visibilityChange = "mozvisibilitychange") : "undefined" != typeof document.webkitHidden && (e.hidden = "webkitHidden", e.visibilityChange = "webkitvisibilitychange"), e.autoPlay = a.proxy(e.autoPlay, e), e.autoPlayClear = a.proxy(e.autoPlayClear, e), e.autoPlayIterator = a.proxy(e.autoPlayIterator, e), e.changeSlide = a.proxy(e.changeSlide, e), e.clickHandler = a.proxy(e.clickHandler, e), e.selectHandler = a.proxy(e.selectHandler, e), e.setPosition = a.proxy(e.setPosition, e), e.swipeHandler = a.proxy(e.swipeHandler, e), e.dragHandler = a.proxy(e.dragHandler, e), e.keyHandler = a.proxy(e.keyHandler, e), e.instanceUid = b++, e.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/, e.registerBreakpoints(), e.init(!0)
		}
		var b = 0;
		return c
	}(), b.prototype.activateADA = function () {
		var a = this;
		a.$slideTrack.find(".slick-active").attr({
			"aria-hidden": "false"
		}).find("a, input, button, select").attr({
			tabindex: "0"
		})
	}, b.prototype.addSlide = b.prototype.slickAdd = function (b, c, d) {
		var e = this;
		if ("boolean" == typeof c) d = c, c = null;
		else if (0 > c || c >= e.slideCount) return !1;
		e.unload(), "number" == typeof c ? 0 === c && 0 === e.$slides.length ? a(b).appendTo(e.$slideTrack) : d ? a(b).insertBefore(e.$slides.eq(c)) : a(b).insertAfter(e.$slides.eq(c)) : d === !0 ? a(b).prependTo(e.$slideTrack) : a(b).appendTo(e.$slideTrack), e.$slides = e.$slideTrack.children(this.options.slide), e.$slideTrack.children(this.options.slide).detach(), e.$slideTrack.append(e.$slides), e.$slides.each(function (b, c) {
			a(c).attr("data-slick-index", b)
		}), e.$slidesCache = e.$slides, e.reinit()
	}, b.prototype.animateHeight = function () {
		var a = this;
		if (1 === a.options.slidesToShow && a.options.adaptiveHeight === !0 && a.options.vertical === !1) {
			var b = a.$slides.eq(a.currentSlide).outerHeight(!0);
			a.$list.animate({
				height: b
			}, a.options.speed)
		}
	}, b.prototype.animateSlide = function (b, c) {
		var d = {},
			e = this;
		e.animateHeight(), e.options.rtl === !0 && e.options.vertical === !1 && (b = -b), e.transformsEnabled === !1 ? e.options.vertical === !1 ? e.$slideTrack.animate({
			left: b
		}, e.options.speed, e.options.easing, c) : e.$slideTrack.animate({
			top: b
		}, e.options.speed, e.options.easing, c) : e.cssTransitions === !1 ? (e.options.rtl === !0 && (e.currentLeft = -e.currentLeft), a({
			animStart: e.currentLeft
		}).animate({
			animStart: b
		}, {
			duration: e.options.speed,
			easing: e.options.easing,
			step: function (a) {
				a = Math.ceil(a), e.options.vertical === !1 ? (d[e.animType] = "translate(" + a + "px, 0px)", e.$slideTrack.css(d)) : (d[e.animType] = "translate(0px," + a + "px)", e.$slideTrack.css(d))
			},
			complete: function () {
				c && c.call()
			}
		})) : (e.applyTransition(), b = Math.ceil(b), e.options.vertical === !1 ? d[e.animType] = "translate3d(" + b + "px, 0px, 0px)" : d[e.animType] = "translate3d(0px," + b + "px, 0px)", e.$slideTrack.css(d), c && setTimeout(function () {
			e.disableTransition(), c.call()
		}, e.options.speed))
	}, b.prototype.getNavTarget = function () {
		var b = this,
			c = b.options.asNavFor;
		return c && null !== c && (c = a(c).not(b.$slider)), c
	}, b.prototype.asNavFor = function (b) {
		var c = this,
			d = c.getNavTarget();
		null !== d && "object" == typeof d && d.each(function () {
			var c = a(this).slick("getSlick");
			c.unslicked || c.slideHandler(b, !0)
		})
	}, b.prototype.applyTransition = function (a) {
		var b = this,
			c = {};
		b.options.fade === !1 ? c[b.transitionType] = b.transformType + " " + b.options.speed + "ms " + b.options.cssEase : c[b.transitionType] = "opacity " + b.options.speed + "ms " + b.options.cssEase, b.options.fade === !1 ? b.$slideTrack.css(c) : b.$slides.eq(a).css(c)
	}, b.prototype.autoPlay = function () {
		var a = this;
		a.autoPlayClear(), a.slideCount > a.options.slidesToShow && (a.autoPlayTimer = setInterval(a.autoPlayIterator, a.options.autoplaySpeed))
	}, b.prototype.autoPlayClear = function () {
		var a = this;
		a.autoPlayTimer && clearInterval(a.autoPlayTimer)
	}, b.prototype.autoPlayIterator = function () {
		var a = this,
			b = a.currentSlide + a.options.slidesToScroll;
		a.paused || a.interrupted || a.focussed || (a.options.infinite === !1 && (1 === a.direction && a.currentSlide + 1 === a.slideCount - 1 ? a.direction = 0 : 0 === a.direction && (b = a.currentSlide - a.options.slidesToScroll, a.currentSlide - 1 === 0 && (a.direction = 1))), a.slideHandler(b))
	}, b.prototype.buildArrows = function () {
		var b = this;
		b.options.arrows === !0 && (b.$prevArrow = a(b.options.prevArrow).addClass("slick-arrow"), b.$nextArrow = a(b.options.nextArrow).addClass("slick-arrow"), b.slideCount > b.options.slidesToShow ? (b.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), b.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"), b.htmlExpr.test(b.options.prevArrow) && b.$prevArrow.prependTo(b.options.appendArrows), b.htmlExpr.test(b.options.nextArrow) && b.$nextArrow.appendTo(b.options.appendArrows), b.options.infinite !== !0 && b.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true")) : b.$prevArrow.add(b.$nextArrow).addClass("slick-hidden").attr({
			"aria-disabled": "true",
			tabindex: "-1"
		}))
	}, b.prototype.buildDots = function () {
		var c, d, b = this;
		if (b.options.dots === !0 && b.slideCount > b.options.slidesToShow) {
			for (b.$slider.addClass("slick-dotted"), d = a("<ul />").addClass(b.options.dotsClass), c = 0; c <= b.getDotCount(); c += 1) d.append(a("<li />").append(b.options.customPaging.call(this, b, c)));
			b.$dots = d.appendTo(b.options.appendDots), b.$dots.find("li").first().addClass("slick-active").attr("aria-hidden", "false")
		}
	}, b.prototype.buildOut = function () {
		var b = this;
		b.$slides = b.$slider.children(b.options.slide + ":not(.slick-cloned)").addClass("slick-slide"), b.slideCount = b.$slides.length, b.$slides.each(function (b, c) {
			a(c).attr("data-slick-index", b).data("originalStyling", a(c).attr("style") || "")
		}), b.$slider.addClass("slick-slider"), b.$slideTrack = 0 === b.slideCount ? a('<div class="slick-track"/>').appendTo(b.$slider) : b.$slides.wrapAll('<div class="slick-track"/>').parent(), b.$list = b.$slideTrack.wrap('<div aria-live="polite" class="slick-list"/>').parent(), b.$slideTrack.css("opacity", 0), (b.options.centerMode === !0 || b.options.swipeToSlide === !0) && (b.options.slidesToScroll = 1), a("img[data-lazy]", b.$slider).not("[src]").addClass("slick-loading"), b.setupInfinite(), b.buildArrows(), b.buildDots(), b.updateDots(), b.setSlideClasses("number" == typeof b.currentSlide ? b.currentSlide : 0), b.options.draggable === !0 && b.$list.addClass("draggable")
	}, b.prototype.buildRows = function () {
		var b, c, d, e, f, g, h, a = this;
		if (e = document.createDocumentFragment(), g = a.$slider.children(), a.options.rows > 1) {
			for (h = a.options.slidesPerRow * a.options.rows, f = Math.ceil(g.length / h), b = 0; f > b; b++) {
				var i = document.createElement("div");
				for (c = 0; c < a.options.rows; c++) {
					var j = document.createElement("div");
					for (d = 0; d < a.options.slidesPerRow; d++) {
						var k = b * h + (c * a.options.slidesPerRow + d);
						g.get(k) && j.appendChild(g.get(k))
					}
					i.appendChild(j)
				}
				e.appendChild(i)
			}
			a.$slider.empty().append(e), a.$slider.children().children().children().css({
				width: 100 / a.options.slidesPerRow + "%",
				display: "inline-block"
			})
		}
	}, b.prototype.checkResponsive = function (b, c) {
		var e, f, g, d = this,
			h = !1,
			i = d.$slider.width(),
			j = window.innerWidth || a(window).width();
		if ("window" === d.respondTo ? g = j : "slider" === d.respondTo ? g = i : "min" === d.respondTo && (g = Math.min(j, i)), d.options.responsive && d.options.responsive.length && null !== d.options.responsive) {
			f = null;
			for (e in d.breakpoints) d.breakpoints.hasOwnProperty(e) && (d.originalSettings.mobileFirst === !1 ? g < d.breakpoints[e] && (f = d.breakpoints[e]) : g > d.breakpoints[e] && (f = d.breakpoints[e]));
			null !== f ? null !== d.activeBreakpoint ? (f !== d.activeBreakpoint || c) && (d.activeBreakpoint = f, "unslick" === d.breakpointSettings[f] ? d.unslick(f) : (d.options = a.extend({}, d.originalSettings, d.breakpointSettings[f]), b === !0 && (d.currentSlide = d.options.initialSlide), d.refresh(b)), h = f) : (d.activeBreakpoint = f, "unslick" === d.breakpointSettings[f] ? d.unslick(f) : (d.options = a.extend({}, d.originalSettings, d.breakpointSettings[f]), b === !0 && (d.currentSlide = d.options.initialSlide), d.refresh(b)), h = f) : null !== d.activeBreakpoint && (d.activeBreakpoint = null, d.options = d.originalSettings, b === !0 && (d.currentSlide = d.options.initialSlide), d.refresh(b), h = f), b || h === !1 || d.$slider.trigger("breakpoint", [d, h])
		}
	}, b.prototype.changeSlide = function (b, c) {
		var f, g, h, d = this,
			e = a(b.currentTarget);
		switch (e.is("a") && b.preventDefault(), e.is("li") || (e = e.closest("li")), h = d.slideCount % d.options.slidesToScroll !== 0, f = h ? 0 : (d.slideCount - d.currentSlide) % d.options.slidesToScroll, b.data.message) {
			case "previous":
				g = 0 === f ? d.options.slidesToScroll : d.options.slidesToShow - f, d.slideCount > d.options.slidesToShow && d.slideHandler(d.currentSlide - g, !1, c);
				break;
			case "next":
				g = 0 === f ? d.options.slidesToScroll : f, d.slideCount > d.options.slidesToShow && d.slideHandler(d.currentSlide + g, !1, c);
				break;
			case "index":
				var i = 0 === b.data.index ? 0 : b.data.index || e.index() * d.options.slidesToScroll;
				d.slideHandler(d.checkNavigable(i), !1, c), e.children().trigger("focus");
				break;
			default:
				return
		}
	}, b.prototype.checkNavigable = function (a) {
		var c, d, b = this;
		if (c = b.getNavigableIndexes(), d = 0, a > c[c.length - 1]) a = c[c.length - 1];
		else
			for (var e in c) {
				if (a < c[e]) {
					a = d;
					break
				}
				d = c[e]
			}
		return a
	}, b.prototype.cleanUpEvents = function () {
		var b = this;
		b.options.dots && null !== b.$dots && a("li", b.$dots).off("click.slick", b.changeSlide).off("mouseenter.slick", a.proxy(b.interrupt, b, !0)).off("mouseleave.slick", a.proxy(b.interrupt, b, !1)), b.$slider.off("focus.slick blur.slick"), b.options.arrows === !0 && b.slideCount > b.options.slidesToShow && (b.$prevArrow && b.$prevArrow.off("click.slick", b.changeSlide), b.$nextArrow && b.$nextArrow.off("click.slick", b.changeSlide)), b.$list.off("touchstart.slick mousedown.slick", b.swipeHandler), b.$list.off("touchmove.slick mousemove.slick", b.swipeHandler), b.$list.off("touchend.slick mouseup.slick", b.swipeHandler), b.$list.off("touchcancel.slick mouseleave.slick", b.swipeHandler), b.$list.off("click.slick", b.clickHandler), a(document).off(b.visibilityChange, b.visibility), b.cleanUpSlideEvents(), b.options.accessibility === !0 && b.$list.off("keydown.slick", b.keyHandler), b.options.focusOnSelect === !0 && a(b.$slideTrack).children().off("click.slick", b.selectHandler), a(window).off("orientationchange.slick.slick-" + b.instanceUid, b.orientationChange), a(window).off("resize.slick.slick-" + b.instanceUid, b.resize), a("[draggable!=true]", b.$slideTrack).off("dragstart", b.preventDefault), a(window).off("load.slick.slick-" + b.instanceUid, b.setPosition), a(document).off("ready.slick.slick-" + b.instanceUid, b.setPosition)
	}, b.prototype.cleanUpSlideEvents = function () {
		var b = this;
		b.$list.off("mouseenter.slick", a.proxy(b.interrupt, b, !0)), b.$list.off("mouseleave.slick", a.proxy(b.interrupt, b, !1))
	}, b.prototype.cleanUpRows = function () {
		var b, a = this;
		a.options.rows > 1 && (b = a.$slides.children().children(), b.removeAttr("style"), a.$slider.empty().append(b))
	}, b.prototype.clickHandler = function (a) {
		var b = this;
		b.shouldClick === !1 && (a.stopImmediatePropagation(), a.stopPropagation(), a.preventDefault())
	}, b.prototype.destroy = function (b) {
		var c = this;
		c.autoPlayClear(), c.touchObject = {}, c.cleanUpEvents(), a(".slick-cloned", c.$slider).detach(), c.$dots && c.$dots.remove(), c.$prevArrow && c.$prevArrow.length && (c.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), c.htmlExpr.test(c.options.prevArrow) && c.$prevArrow.remove()), c.$nextArrow && c.$nextArrow.length && (c.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display", ""), c.htmlExpr.test(c.options.nextArrow) && c.$nextArrow.remove()), c.$slides && (c.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function () {
			a(this).attr("style", a(this).data("originalStyling"))
		}), c.$slideTrack.children(this.options.slide).detach(), c.$slideTrack.detach(), c.$list.detach(), c.$slider.append(c.$slides)), c.cleanUpRows(), c.$slider.removeClass("slick-slider"), c.$slider.removeClass("slick-initialized"), c.$slider.removeClass("slick-dotted"), c.unslicked = !0, b || c.$slider.trigger("destroy", [c])
	}, b.prototype.disableTransition = function (a) {
		var b = this,
			c = {};
		c[b.transitionType] = "", b.options.fade === !1 ? b.$slideTrack.css(c) : b.$slides.eq(a).css(c)
	}, b.prototype.fadeSlide = function (a, b) {
		var c = this;
		c.cssTransitions === !1 ? (c.$slides.eq(a).css({
			zIndex: c.options.zIndex
		}), c.$slides.eq(a).animate({
			opacity: 1
		}, c.options.speed, c.options.easing, b)) : (c.applyTransition(a), c.$slides.eq(a).css({
			opacity: 1,
			zIndex: c.options.zIndex
		}), b && setTimeout(function () {
			c.disableTransition(a), b.call()
		}, c.options.speed))
	}, b.prototype.fadeSlideOut = function (a) {
		var b = this;
		b.cssTransitions === !1 ? b.$slides.eq(a).animate({
			opacity: 0,
			zIndex: b.options.zIndex - 2
		}, b.options.speed, b.options.easing) : (b.applyTransition(a), b.$slides.eq(a).css({
			opacity: 0,
			zIndex: b.options.zIndex - 2
		}))
	}, b.prototype.filterSlides = b.prototype.slickFilter = function (a) {
		var b = this;
		null !== a && (b.$slidesCache = b.$slides, b.unload(), b.$slideTrack.children(this.options.slide).detach(), b.$slidesCache.filter(a).appendTo(b.$slideTrack), b.reinit())
	}, b.prototype.focusHandler = function () {
		var b = this;
		b.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick", "*:not(.slick-arrow)", function (c) {
			c.stopImmediatePropagation();
			var d = a(this);
			setTimeout(function () {
				b.options.pauseOnFocus && (b.focussed = d.is(":focus"), b.autoPlay())
			}, 0)
		})
	}, b.prototype.getCurrent = b.prototype.slickCurrentSlide = function () {
		var a = this;
		return a.currentSlide
	}, b.prototype.getDotCount = function () {
		var a = this,
			b = 0,
			c = 0,
			d = 0;
		if (a.options.infinite === !0)
			for (; b < a.slideCount;) ++d, b = c + a.options.slidesToScroll, c += a.options.slidesToScroll <= a.options.slidesToShow ? a.options.slidesToScroll : a.options.slidesToShow;
		else if (a.options.centerMode === !0) d = a.slideCount;
		else if (a.options.asNavFor)
			for (; b < a.slideCount;) ++d, b = c + a.options.slidesToScroll, c += a.options.slidesToScroll <= a.options.slidesToShow ? a.options.slidesToScroll : a.options.slidesToShow;
		else d = 1 + Math.ceil((a.slideCount - a.options.slidesToShow) / a.options.slidesToScroll);
		return d - 1
	}, b.prototype.getLeft = function (a) {
		var c, d, f, b = this,
			e = 0;
		return b.slideOffset = 0, d = b.$slides.first().outerHeight(!0), b.options.infinite === !0 ? (b.slideCount > b.options.slidesToShow && (b.slideOffset = b.slideWidth * b.options.slidesToShow * -1, e = d * b.options.slidesToShow * -1), b.slideCount % b.options.slidesToScroll !== 0 && a + b.options.slidesToScroll > b.slideCount && b.slideCount > b.options.slidesToShow && (a > b.slideCount ? (b.slideOffset = (b.options.slidesToShow - (a - b.slideCount)) * b.slideWidth * -1, e = (b.options.slidesToShow - (a - b.slideCount)) * d * -1) : (b.slideOffset = b.slideCount % b.options.slidesToScroll * b.slideWidth * -1, e = b.slideCount % b.options.slidesToScroll * d * -1))) : a + b.options.slidesToShow > b.slideCount && (b.slideOffset = (a + b.options.slidesToShow - b.slideCount) * b.slideWidth, e = (a + b.options.slidesToShow - b.slideCount) * d), b.slideCount <= b.options.slidesToShow && (b.slideOffset = 0, e = 0), b.options.centerMode === !0 && b.options.infinite === !0 ? b.slideOffset += b.slideWidth * Math.floor(b.options.slidesToShow / 2) - b.slideWidth : b.options.centerMode === !0 && (b.slideOffset = 0, b.slideOffset += b.slideWidth * Math.floor(b.options.slidesToShow / 2)), c = b.options.vertical === !1 ? a * b.slideWidth * -1 + b.slideOffset : a * d * -1 + e, b.options.variableWidth === !0 && (f = b.slideCount <= b.options.slidesToShow || b.options.infinite === !1 ? b.$slideTrack.children(".slick-slide").eq(a) : b.$slideTrack.children(".slick-slide").eq(a + b.options.slidesToShow), c = b.options.rtl === !0 ? f[0] ? -1 * (b.$slideTrack.width() - f[0].offsetLeft - f.width()) : 0 : f[0] ? -1 * f[0].offsetLeft : 0, b.options.centerMode === !0 && (f = b.slideCount <= b.options.slidesToShow || b.options.infinite === !1 ? b.$slideTrack.children(".slick-slide").eq(a) : b.$slideTrack.children(".slick-slide").eq(a + b.options.slidesToShow + 1), c = b.options.rtl === !0 ? f[0] ? -1 * (b.$slideTrack.width() - f[0].offsetLeft - f.width()) : 0 : f[0] ? -1 * f[0].offsetLeft : 0, c += (b.$list.width() - f.outerWidth()) / 2)), c
	}, b.prototype.getOption = b.prototype.slickGetOption = function (a) {
		var b = this;
		return b.options[a]
	}, b.prototype.getNavigableIndexes = function () {
		var e, a = this,
			b = 0,
			c = 0,
			d = [];
		for (a.options.infinite === !1 ? e = a.slideCount : (b = -1 * a.options.slidesToScroll, c = -1 * a.options.slidesToScroll, e = 2 * a.slideCount); e > b;) d.push(b), b = c + a.options.slidesToScroll, c += a.options.slidesToScroll <= a.options.slidesToShow ? a.options.slidesToScroll : a.options.slidesToShow;
		return d
	}, b.prototype.getSlick = function () {
		return this
	}, b.prototype.getSlideCount = function () {
		var c, d, e, b = this;
		return e = b.options.centerMode === !0 ? b.slideWidth * Math.floor(b.options.slidesToShow / 2) : 0, b.options.swipeToSlide === !0 ? (b.$slideTrack.find(".slick-slide").each(function (c, f) {
			return f.offsetLeft - e + a(f).outerWidth() / 2 > -1 * b.swipeLeft ? (d = f, !1) : void 0
		}), c = Math.abs(a(d).attr("data-slick-index") - b.currentSlide) || 1) : b.options.slidesToScroll
	}, b.prototype.goTo = b.prototype.slickGoTo = function (a, b) {
		var c = this;
		c.changeSlide({
			data: {
				message: "index",
				index: parseInt(a)
			}
		}, b)
	}, b.prototype.init = function (b) {
		var c = this;
		a(c.$slider).hasClass("slick-initialized") || (a(c.$slider).addClass("slick-initialized"), c.buildRows(), c.buildOut(), c.setProps(), c.startLoad(), c.loadSlider(), c.initializeEvents(), c.updateArrows(), c.updateDots(), c.checkResponsive(!0), c.focusHandler()), b && c.$slider.trigger("init", [c]), c.options.accessibility === !0 && c.initADA(), c.options.autoplay && (c.paused = !1, c.autoPlay())
	}, b.prototype.initADA = function () {
		var b = this;
		b.$slides.add(b.$slideTrack.find(".slick-cloned")).attr({
			"aria-hidden": "true",
			tabindex: "-1"
		}).find("a, input, button, select").attr({
			tabindex: "-1"
		}), b.$slideTrack.attr("role", "listbox"), b.$slides.not(b.$slideTrack.find(".slick-cloned")).each(function (c) {
			a(this).attr({
				role: "option",
				"aria-describedby": "slick-slide" + b.instanceUid + c
			})
		}), null !== b.$dots && b.$dots.attr("role", "tablist").find("li").each(function (c) {
			a(this).attr({
				role: "presentation",
				"aria-selected": "false",
				"aria-controls": "navigation" + b.instanceUid + c,
				id: "slick-slide" + b.instanceUid + c
			})
		}).first().attr("aria-selected", "true").end().find("button").attr("role", "button").end().closest("div").attr("role", "toolbar"), b.activateADA()
	}, b.prototype.initArrowEvents = function () {
		var a = this;
		a.options.arrows === !0 && a.slideCount > a.options.slidesToShow && (a.$prevArrow.off("click.slick").on("click.slick", {
			message: "previous"
		}, a.changeSlide), a.$nextArrow.off("click.slick").on("click.slick", {
			message: "next"
		}, a.changeSlide))
	}, b.prototype.initDotEvents = function () {
		var b = this;
		b.options.dots === !0 && b.slideCount > b.options.slidesToShow && a("li", b.$dots).on("click.slick", {
			message: "index"
		}, b.changeSlide), b.options.dots === !0 && b.options.pauseOnDotsHover === !0 && a("li", b.$dots).on("mouseenter.slick", a.proxy(b.interrupt, b, !0)).on("mouseleave.slick", a.proxy(b.interrupt, b, !1))
	}, b.prototype.initSlideEvents = function () {
		var b = this;
		b.options.pauseOnHover && (b.$list.on("mouseenter.slick", a.proxy(b.interrupt, b, !0)), b.$list.on("mouseleave.slick", a.proxy(b.interrupt, b, !1)))
	}, b.prototype.initializeEvents = function () {
		var b = this;
		b.initArrowEvents(), b.initDotEvents(), b.initSlideEvents(), b.$list.on("touchstart.slick mousedown.slick", {
			action: "start"
		}, b.swipeHandler), b.$list.on("touchmove.slick mousemove.slick", {
			action: "move"
		}, b.swipeHandler), b.$list.on("touchend.slick mouseup.slick", {
			action: "end"
		}, b.swipeHandler), b.$list.on("touchcancel.slick mouseleave.slick", {
			action: "end"
		}, b.swipeHandler), b.$list.on("click.slick", b.clickHandler), a(document).on(b.visibilityChange, a.proxy(b.visibility, b)), b.options.accessibility === !0 && b.$list.on("keydown.slick", b.keyHandler), b.options.focusOnSelect === !0 && a(b.$slideTrack).children().on("click.slick", b.selectHandler), a(window).on("orientationchange.slick.slick-" + b.instanceUid, a.proxy(b.orientationChange, b)), a(window).on("resize.slick.slick-" + b.instanceUid, a.proxy(b.resize, b)), a("[draggable!=true]", b.$slideTrack).on("dragstart", b.preventDefault), a(window).on("load.slick.slick-" + b.instanceUid, b.setPosition), a(document).on("ready.slick.slick-" + b.instanceUid, b.setPosition)
	}, b.prototype.initUI = function () {
		var a = this;
		a.options.arrows === !0 && a.slideCount > a.options.slidesToShow && (a.$prevArrow.show(), a.$nextArrow.show()), a.options.dots === !0 && a.slideCount > a.options.slidesToShow && a.$dots.show()
	}, b.prototype.keyHandler = function (a) {
		var b = this;
		a.target.tagName.match("TEXTAREA|INPUT|SELECT") || (37 === a.keyCode && b.options.accessibility === !0 ? b.changeSlide({
			data: {
				message: b.options.rtl === !0 ? "next" : "previous"
			}
		}) : 39 === a.keyCode && b.options.accessibility === !0 && b.changeSlide({
			data: {
				message: b.options.rtl === !0 ? "previous" : "next"
			}
		}))
	}, b.prototype.lazyLoad = function () {
		function g(c) {
			a("img[data-lazy]", c).each(function () {
				var c = a(this),
					d = a(this).attr("data-lazy"),
					e = document.createElement("img");
				e.onload = function () {
					c.animate({
						opacity: 0
					}, 100, function () {
						c.attr("src", d).animate({
							opacity: 1
						}, 200, function () {
							c.removeAttr("data-lazy").removeClass("slick-loading")
						}), b.$slider.trigger("lazyLoaded", [b, c, d])
					})
				}, e.onerror = function () {
					c.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), b.$slider.trigger("lazyLoadError", [b, c, d])
				}, e.src = d
			})
		}
		var c, d, e, f, b = this;
		b.options.centerMode === !0 ? b.options.infinite === !0 ? (e = b.currentSlide + (b.options.slidesToShow / 2 + 1), f = e + b.options.slidesToShow + 2) : (e = Math.max(0, b.currentSlide - (b.options.slidesToShow / 2 + 1)), f = 2 + (b.options.slidesToShow / 2 + 1) + b.currentSlide) : (e = b.options.infinite ? b.options.slidesToShow + b.currentSlide : b.currentSlide, f = Math.ceil(e + b.options.slidesToShow), b.options.fade === !0 && (e > 0 && e--, f <= b.slideCount && f++)), c = b.$slider.find(".slick-slide").slice(e, f), g(c), b.slideCount <= b.options.slidesToShow ? (d = b.$slider.find(".slick-slide"), g(d)) : b.currentSlide >= b.slideCount - b.options.slidesToShow ? (d = b.$slider.find(".slick-cloned").slice(0, b.options.slidesToShow), g(d)) : 0 === b.currentSlide && (d = b.$slider.find(".slick-cloned").slice(-1 * b.options.slidesToShow), g(d))
	}, b.prototype.loadSlider = function () {
		var a = this;
		a.setPosition(), a.$slideTrack.css({
			opacity: 1
		}), a.$slider.removeClass("slick-loading"), a.initUI(), "progressive" === a.options.lazyLoad && a.progressiveLazyLoad()
	}, b.prototype.next = b.prototype.slickNext = function () {
		var a = this;
		a.changeSlide({
			data: {
				message: "next"
			}
		})
	}, b.prototype.orientationChange = function () {
		var a = this;
		a.checkResponsive(), a.setPosition()
	}, b.prototype.pause = b.prototype.slickPause = function () {
		var a = this;
		a.autoPlayClear(), a.paused = !0
	}, b.prototype.play = b.prototype.slickPlay = function () {
		var a = this;
		a.autoPlay(), a.options.autoplay = !0, a.paused = !1, a.focussed = !1, a.interrupted = !1
	}, b.prototype.postSlide = function (a) {
		var b = this;
		b.unslicked || (b.$slider.trigger("afterChange", [b, a]), b.animating = !1, b.setPosition(), b.swipeLeft = null, b.options.autoplay && b.autoPlay(), b.options.accessibility === !0 && b.initADA())
	}, b.prototype.prev = b.prototype.slickPrev = function () {
		var a = this;
		a.changeSlide({
			data: {
				message: "previous"
			}
		})
	}, b.prototype.preventDefault = function (a) {
		a.preventDefault()
	}, b.prototype.progressiveLazyLoad = function (b) {
		b = b || 1;
		var e, f, g, c = this,
			d = a("img[data-lazy]", c.$slider);
		d.length ? (e = d.first(), f = e.attr("data-lazy"), g = document.createElement("img"), g.onload = function () {
			e.attr("src", f).removeAttr("data-lazy").removeClass("slick-loading"), c.options.adaptiveHeight === !0 && c.setPosition(), c.$slider.trigger("lazyLoaded", [c, e, f]), c.progressiveLazyLoad()
		}, g.onerror = function () {
			3 > b ? setTimeout(function () {
				c.progressiveLazyLoad(b + 1)
			}, 500) : (e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"), c.$slider.trigger("lazyLoadError", [c, e, f]), c.progressiveLazyLoad())
		}, g.src = f) : c.$slider.trigger("allImagesLoaded", [c])
	}, b.prototype.refresh = function (b) {
		var d, e, c = this;
		e = c.slideCount - c.options.slidesToShow, !c.options.infinite && c.currentSlide > e && (c.currentSlide = e), c.slideCount <= c.options.slidesToShow && (c.currentSlide = 0), d = c.currentSlide, c.destroy(!0), a.extend(c, c.initials, {
			currentSlide: d
		}), c.init(), b || c.changeSlide({
			data: {
				message: "index",
				index: d
			}
		}, !1)
	}, b.prototype.registerBreakpoints = function () {
		var c, d, e, b = this,
			f = b.options.responsive || null;
		if ("array" === a.type(f) && f.length) {
			b.respondTo = b.options.respondTo || "window";
			for (c in f)
				if (e = b.breakpoints.length - 1, d = f[c].breakpoint, f.hasOwnProperty(c)) {
					for (; e >= 0;) b.breakpoints[e] && b.breakpoints[e] === d && b.breakpoints.splice(e, 1), e--;
					b.breakpoints.push(d), b.breakpointSettings[d] = f[c].settings
				}
			b.breakpoints.sort(function (a, c) {
				return b.options.mobileFirst ? a - c : c - a
			})
		}
	}, b.prototype.reinit = function () {
		var b = this;
		b.$slides = b.$slideTrack.children(b.options.slide).addClass("slick-slide"), b.slideCount = b.$slides.length, b.currentSlide >= b.slideCount && 0 !== b.currentSlide && (b.currentSlide = b.currentSlide - b.options.slidesToScroll), b.slideCount <= b.options.slidesToShow && (b.currentSlide = 0), b.registerBreakpoints(), b.setProps(), b.setupInfinite(), b.buildArrows(), b.updateArrows(), b.initArrowEvents(), b.buildDots(), b.updateDots(), b.initDotEvents(), b.cleanUpSlideEvents(), b.initSlideEvents(), b.checkResponsive(!1, !0), b.options.focusOnSelect === !0 && a(b.$slideTrack).children().on("click.slick", b.selectHandler), b.setSlideClasses("number" == typeof b.currentSlide ? b.currentSlide : 0), b.setPosition(), b.focusHandler(), b.paused = !b.options.autoplay, b.autoPlay(), b.$slider.trigger("reInit", [b])
	}, b.prototype.resize = function () {
		var b = this;
		a(window).width() !== b.windowWidth && (clearTimeout(b.windowDelay), b.windowDelay = window.setTimeout(function () {
			b.windowWidth = a(window).width(), b.checkResponsive(), b.unslicked || b.setPosition()
		}, 50))
	}, b.prototype.removeSlide = b.prototype.slickRemove = function (a, b, c) {
		var d = this;
		return "boolean" == typeof a ? (b = a, a = b === !0 ? 0 : d.slideCount - 1) : a = b === !0 ? --a : a, d.slideCount < 1 || 0 > a || a > d.slideCount - 1 ? !1 : (d.unload(), c === !0 ? d.$slideTrack.children().remove() : d.$slideTrack.children(this.options.slide).eq(a).remove(), d.$slides = d.$slideTrack.children(this.options.slide), d.$slideTrack.children(this.options.slide).detach(), d.$slideTrack.append(d.$slides), d.$slidesCache = d.$slides, void d.reinit())
	}, b.prototype.setCSS = function (a) {
		var d, e, b = this,
			c = {};
		b.options.rtl === !0 && (a = -a), d = "left" == b.positionProp ? Math.ceil(a) + "px" : "0px", e = "top" == b.positionProp ? Math.ceil(a) + "px" : "0px", c[b.positionProp] = a, b.transformsEnabled === !1 ? b.$slideTrack.css(c) : (c = {}, b.cssTransitions === !1 ? (c[b.animType] = "translate(" + d + ", " + e + ")", b.$slideTrack.css(c)) : (c[b.animType] = "translate3d(" + d + ", " + e + ", 0px)", b.$slideTrack.css(c)))
	}, b.prototype.setDimensions = function () {
		var a = this;
		a.options.vertical === !1 ? a.options.centerMode === !0 && a.$list.css({
			padding: "0px " + a.options.centerPadding
		}) : (a.$list.height(a.$slides.first().outerHeight(!0) * a.options.slidesToShow), a.options.centerMode === !0 && a.$list.css({
			padding: a.options.centerPadding + " 0px"
		})), a.listWidth = a.$list.width(), a.listHeight = a.$list.height(), a.options.vertical === !1 && a.options.variableWidth === !1 ? (a.slideWidth = Math.ceil(a.listWidth / a.options.slidesToShow), a.$slideTrack.width(Math.ceil(a.slideWidth * a.$slideTrack.children(".slick-slide").length))) : a.options.variableWidth === !0 ? a.$slideTrack.width(5e3 * a.slideCount) : (a.slideWidth = Math.ceil(a.listWidth), a.$slideTrack.height(Math.ceil(a.$slides.first().outerHeight(!0) * a.$slideTrack.children(".slick-slide").length)));
		var b = a.$slides.first().outerWidth(!0) - a.$slides.first().width();
		a.options.variableWidth === !1 && a.$slideTrack.children(".slick-slide").width(a.slideWidth - b)
	}, b.prototype.setFade = function () {
		var c, b = this;
		b.$slides.each(function (d, e) {
			c = b.slideWidth * d * -1, b.options.rtl === !0 ? a(e).css({
				position: "relative",
				right: c,
				top: 0,
				zIndex: b.options.zIndex - 2,
				opacity: 0
			}) : a(e).css({
				position: "relative",
				left: c,
				top: 0,
				zIndex: b.options.zIndex - 2,
				opacity: 0
			})
		}), b.$slides.eq(b.currentSlide).css({
			zIndex: b.options.zIndex - 1,
			opacity: 1
		})
	}, b.prototype.setHeight = function () {
		var a = this;
		if (1 === a.options.slidesToShow && a.options.adaptiveHeight === !0 && a.options.vertical === !1) {
			var b = a.$slides.eq(a.currentSlide).outerHeight(!0);
			a.$list.css("height", b)
		}
	}, b.prototype.setOption = b.prototype.slickSetOption = function () {
		var c, d, e, f, h, b = this,
			g = !1;
		if ("object" === a.type(arguments[0]) ? (e = arguments[0], g = arguments[1], h = "multiple") : "string" === a.type(arguments[0]) && (e = arguments[0], f = arguments[1], g = arguments[2], "responsive" === arguments[0] && "array" === a.type(arguments[1]) ? h = "responsive" : "undefined" != typeof arguments[1] && (h = "single")), "single" === h) b.options[e] = f;
		else if ("multiple" === h) a.each(e, function (a, c) {
			b.options[a] = c
		});
		else if ("responsive" === h)
			for (d in f)
				if ("array" !== a.type(b.options.responsive)) b.options.responsive = [f[d]];
				else {
					for (c = b.options.responsive.length - 1; c >= 0;) b.options.responsive[c].breakpoint === f[d].breakpoint && b.options.responsive.splice(c, 1), c--;
					b.options.responsive.push(f[d])
				}
		g && (b.unload(), b.reinit())
	}, b.prototype.setPosition = function () {
		var a = this;
		a.setDimensions(), a.setHeight(), a.options.fade === !1 ? a.setCSS(a.getLeft(a.currentSlide)) : a.setFade(), a.$slider.trigger("setPosition", [a])
	}, b.prototype.setProps = function () {
		var a = this,
			b = document.body.style;
		a.positionProp = a.options.vertical === !0 ? "top" : "left", "top" === a.positionProp ? a.$slider.addClass("slick-vertical") : a.$slider.removeClass("slick-vertical"), (void 0 !== b.WebkitTransition || void 0 !== b.MozTransition || void 0 !== b.msTransition) && a.options.useCSS === !0 && (a.cssTransitions = !0), a.options.fade && ("number" == typeof a.options.zIndex ? a.options.zIndex < 3 && (a.options.zIndex = 3) : a.options.zIndex = a.defaults.zIndex), void 0 !== b.OTransform && (a.animType = "OTransform", a.transformType = "-o-transform", a.transitionType = "OTransition", void 0 === b.perspectiveProperty && void 0 === b.webkitPerspective && (a.animType = !1)), void 0 !== b.MozTransform && (a.animType = "MozTransform", a.transformType = "-moz-transform", a.transitionType = "MozTransition", void 0 === b.perspectiveProperty && void 0 === b.MozPerspective && (a.animType = !1)), void 0 !== b.webkitTransform && (a.animType = "webkitTransform", a.transformType = "-webkit-transform", a.transitionType = "webkitTransition", void 0 === b.perspectiveProperty && void 0 === b.webkitPerspective && (a.animType = !1)), void 0 !== b.msTransform && (a.animType = "msTransform", a.transformType = "-ms-transform", a.transitionType = "msTransition", void 0 === b.msTransform && (a.animType = !1)), void 0 !== b.transform && a.animType !== !1 && (a.animType = "transform", a.transformType = "transform", a.transitionType = "transition"), a.transformsEnabled = a.options.useTransform && null !== a.animType && a.animType !== !1
	}, b.prototype.setSlideClasses = function (a) {
		var c, d, e, f, b = this;
		d = b.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden", "true"), b.$slides.eq(a).addClass("slick-current"), b.options.centerMode === !0 ? (c = Math.floor(b.options.slidesToShow / 2), b.options.infinite === !0 && (a >= c && a <= b.slideCount - 1 - c ? b.$slides.slice(a - c, a + c + 1).addClass("slick-active").attr("aria-hidden", "false") : (e = b.options.slidesToShow + a,
			d.slice(e - c + 1, e + c + 2).addClass("slick-active").attr("aria-hidden", "false")), 0 === a ? d.eq(d.length - 1 - b.options.slidesToShow).addClass("slick-center") : a === b.slideCount - 1 && d.eq(b.options.slidesToShow).addClass("slick-center")), b.$slides.eq(a).addClass("slick-center")) : a >= 0 && a <= b.slideCount - b.options.slidesToShow ? b.$slides.slice(a, a + b.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false") : d.length <= b.options.slidesToShow ? d.addClass("slick-active").attr("aria-hidden", "false") : (f = b.slideCount % b.options.slidesToShow, e = b.options.infinite === !0 ? b.options.slidesToShow + a : a, b.options.slidesToShow == b.options.slidesToScroll && b.slideCount - a < b.options.slidesToShow ? d.slice(e - (b.options.slidesToShow - f), e + f).addClass("slick-active").attr("aria-hidden", "false") : d.slice(e, e + b.options.slidesToShow).addClass("slick-active").attr("aria-hidden", "false")), "ondemand" === b.options.lazyLoad && b.lazyLoad()
	}, b.prototype.setupInfinite = function () {
		var c, d, e, b = this;
		if (b.options.fade === !0 && (b.options.centerMode = !1), b.options.infinite === !0 && b.options.fade === !1 && (d = null, b.slideCount > b.options.slidesToShow)) {
			for (e = b.options.centerMode === !0 ? b.options.slidesToShow + 1 : b.options.slidesToShow, c = b.slideCount; c > b.slideCount - e; c -= 1) d = c - 1, a(b.$slides[d]).clone(!0).attr("id", "").attr("data-slick-index", d - b.slideCount).prependTo(b.$slideTrack).addClass("slick-cloned");
			for (c = 0; e > c; c += 1) d = c, a(b.$slides[d]).clone(!0).attr("id", "").attr("data-slick-index", d + b.slideCount).appendTo(b.$slideTrack).addClass("slick-cloned");
			b.$slideTrack.find(".slick-cloned").find("[id]").each(function () {
				a(this).attr("id", "")
			})
		}
	}, b.prototype.interrupt = function (a) {
		var b = this;
		a || b.autoPlay(), b.interrupted = a
	}, b.prototype.selectHandler = function (b) {
		var c = this,
			d = a(b.target).is(".slick-slide") ? a(b.target) : a(b.target).parents(".slick-slide"),
			e = parseInt(d.attr("data-slick-index"));
		return e || (e = 0), c.slideCount <= c.options.slidesToShow ? (c.setSlideClasses(e), void c.asNavFor(e)) : void c.slideHandler(e)
	}, b.prototype.slideHandler = function (a, b, c) {
		var d, e, f, g, j, h = null,
			i = this;
		return b = b || !1, i.animating === !0 && i.options.waitForAnimate === !0 || i.options.fade === !0 && i.currentSlide === a || i.slideCount <= i.options.slidesToShow ? void 0 : (b === !1 && i.asNavFor(a), d = a, h = i.getLeft(d), g = i.getLeft(i.currentSlide), i.currentLeft = null === i.swipeLeft ? g : i.swipeLeft, i.options.infinite === !1 && i.options.centerMode === !1 && (0 > a || a > i.getDotCount() * i.options.slidesToScroll) ? void(i.options.fade === !1 && (d = i.currentSlide, c !== !0 ? i.animateSlide(g, function () {
			i.postSlide(d)
		}) : i.postSlide(d))) : i.options.infinite === !1 && i.options.centerMode === !0 && (0 > a || a > i.slideCount - i.options.slidesToScroll) ? void(i.options.fade === !1 && (d = i.currentSlide, c !== !0 ? i.animateSlide(g, function () {
			i.postSlide(d)
		}) : i.postSlide(d))) : (i.options.autoplay && clearInterval(i.autoPlayTimer), e = 0 > d ? i.slideCount % i.options.slidesToScroll !== 0 ? i.slideCount - i.slideCount % i.options.slidesToScroll : i.slideCount + d : d >= i.slideCount ? i.slideCount % i.options.slidesToScroll !== 0 ? 0 : d - i.slideCount : d, i.animating = !0, i.$slider.trigger("beforeChange", [i, i.currentSlide, e]), f = i.currentSlide, i.currentSlide = e, i.setSlideClasses(i.currentSlide), i.options.asNavFor && (j = i.getNavTarget(), j = j.slick("getSlick"), j.slideCount <= j.options.slidesToShow && j.setSlideClasses(i.currentSlide)), i.updateDots(), i.updateArrows(), i.options.fade === !0 ? (c !== !0 ? (i.fadeSlideOut(f), i.fadeSlide(e, function () {
			i.postSlide(e)
		})) : i.postSlide(e), void i.animateHeight()) : void(c !== !0 ? i.animateSlide(h, function () {
			i.postSlide(e)
		}) : i.postSlide(e))))
	}, b.prototype.startLoad = function () {
		var a = this;
		a.options.arrows === !0 && a.slideCount > a.options.slidesToShow && (a.$prevArrow.hide(), a.$nextArrow.hide()), a.options.dots === !0 && a.slideCount > a.options.slidesToShow && a.$dots.hide(), a.$slider.addClass("slick-loading")
	}, b.prototype.swipeDirection = function () {
		var a, b, c, d, e = this;
		return a = e.touchObject.startX - e.touchObject.curX, b = e.touchObject.startY - e.touchObject.curY, c = Math.atan2(b, a), d = Math.round(180 * c / Math.PI), 0 > d && (d = 360 - Math.abs(d)), 45 >= d && d >= 0 ? e.options.rtl === !1 ? "left" : "right" : 360 >= d && d >= 315 ? e.options.rtl === !1 ? "left" : "right" : d >= 135 && 225 >= d ? e.options.rtl === !1 ? "right" : "left" : e.options.verticalSwiping === !0 ? d >= 35 && 135 >= d ? "down" : "up" : "vertical"
	}, b.prototype.swipeEnd = function (a) {
		var c, d, b = this;
		if (b.dragging = !1, b.interrupted = !1, b.shouldClick = b.touchObject.swipeLength > 10 ? !1 : !0, void 0 === b.touchObject.curX) return !1;
		if (b.touchObject.edgeHit === !0 && b.$slider.trigger("edge", [b, b.swipeDirection()]), b.touchObject.swipeLength >= b.touchObject.minSwipe) {
			switch (d = b.swipeDirection()) {
				case "left":
				case "down":
					c = b.options.swipeToSlide ? b.checkNavigable(b.currentSlide + b.getSlideCount()) : b.currentSlide + b.getSlideCount(), b.currentDirection = 0;
					break;
				case "right":
				case "up":
					c = b.options.swipeToSlide ? b.checkNavigable(b.currentSlide - b.getSlideCount()) : b.currentSlide - b.getSlideCount(), b.currentDirection = 1
			}
			"vertical" != d && (b.slideHandler(c), b.touchObject = {}, b.$slider.trigger("swipe", [b, d]))
		} else b.touchObject.startX !== b.touchObject.curX && (b.slideHandler(b.currentSlide), b.touchObject = {})
	}, b.prototype.swipeHandler = function (a) {
		var b = this;
		if (!(b.options.swipe === !1 || "ontouchend" in document && b.options.swipe === !1 || b.options.draggable === !1 && -1 !== a.type.indexOf("mouse"))) switch (b.touchObject.fingerCount = a.originalEvent && void 0 !== a.originalEvent.touches ? a.originalEvent.touches.length : 1, b.touchObject.minSwipe = b.listWidth / b.options.touchThreshold, b.options.verticalSwiping === !0 && (b.touchObject.minSwipe = b.listHeight / b.options.touchThreshold), a.data.action) {
			case "start":
				b.swipeStart(a);
				break;
			case "move":
				b.swipeMove(a);
				break;
			case "end":
				b.swipeEnd(a)
		}
	}, b.prototype.swipeMove = function (a) {
		var d, e, f, g, h, b = this;
		return h = void 0 !== a.originalEvent ? a.originalEvent.touches : null, !b.dragging || h && 1 !== h.length ? !1 : (d = b.getLeft(b.currentSlide), b.touchObject.curX = void 0 !== h ? h[0].pageX : a.clientX, b.touchObject.curY = void 0 !== h ? h[0].pageY : a.clientY, b.touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(b.touchObject.curX - b.touchObject.startX, 2))), b.options.verticalSwiping === !0 && (b.touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(b.touchObject.curY - b.touchObject.startY, 2)))), e = b.swipeDirection(), "vertical" !== e ? (void 0 !== a.originalEvent && b.touchObject.swipeLength > 4 && a.preventDefault(), g = (b.options.rtl === !1 ? 1 : -1) * (b.touchObject.curX > b.touchObject.startX ? 1 : -1), b.options.verticalSwiping === !0 && (g = b.touchObject.curY > b.touchObject.startY ? 1 : -1), f = b.touchObject.swipeLength, b.touchObject.edgeHit = !1, b.options.infinite === !1 && (0 === b.currentSlide && "right" === e || b.currentSlide >= b.getDotCount() && "left" === e) && (f = b.touchObject.swipeLength * b.options.edgeFriction, b.touchObject.edgeHit = !0), b.options.vertical === !1 ? b.swipeLeft = d + f * g : b.swipeLeft = d + f * (b.$list.height() / b.listWidth) * g, b.options.verticalSwiping === !0 && (b.swipeLeft = d + f * g), b.options.fade === !0 || b.options.touchMove === !1 ? !1 : b.animating === !0 ? (b.swipeLeft = null, !1) : void b.setCSS(b.swipeLeft)) : void 0)
	}, b.prototype.swipeStart = function (a) {
		var c, b = this;
		return b.interrupted = !0, 1 !== b.touchObject.fingerCount || b.slideCount <= b.options.slidesToShow ? (b.touchObject = {}, !1) : (void 0 !== a.originalEvent && void 0 !== a.originalEvent.touches && (c = a.originalEvent.touches[0]), b.touchObject.startX = b.touchObject.curX = void 0 !== c ? c.pageX : a.clientX, b.touchObject.startY = b.touchObject.curY = void 0 !== c ? c.pageY : a.clientY, void(b.dragging = !0))
	}, b.prototype.unfilterSlides = b.prototype.slickUnfilter = function () {
		var a = this;
		null !== a.$slidesCache && (a.unload(), a.$slideTrack.children(this.options.slide).detach(), a.$slidesCache.appendTo(a.$slideTrack), a.reinit())
	}, b.prototype.unload = function () {
		var b = this;
		a(".slick-cloned", b.$slider).remove(), b.$dots && b.$dots.remove(), b.$prevArrow && b.htmlExpr.test(b.options.prevArrow) && b.$prevArrow.remove(), b.$nextArrow && b.htmlExpr.test(b.options.nextArrow) && b.$nextArrow.remove(), b.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden", "true").css("width", "")
	}, b.prototype.unslick = function (a) {
		var b = this;
		b.$slider.trigger("unslick", [b, a]), b.destroy()
	}, b.prototype.updateArrows = function () {
		var b, a = this;
		b = Math.floor(a.options.slidesToShow / 2), a.options.arrows === !0 && a.slideCount > a.options.slidesToShow && !a.options.infinite && (a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), a.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false"), 0 === a.currentSlide ? (a.$prevArrow.addClass("slick-disabled").attr("aria-disabled", "true"), a.$nextArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : a.currentSlide >= a.slideCount - a.options.slidesToShow && a.options.centerMode === !1 ? (a.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false")) : a.currentSlide >= a.slideCount - 1 && a.options.centerMode === !0 && (a.$nextArrow.addClass("slick-disabled").attr("aria-disabled", "true"), a.$prevArrow.removeClass("slick-disabled").attr("aria-disabled", "false")))
	}, b.prototype.updateDots = function () {
		var a = this;
		null !== a.$dots && (a.$dots.find("li").removeClass("slick-active").attr("aria-hidden", "true"), a.$dots.find("li").eq(Math.floor(a.currentSlide / a.options.slidesToScroll)).addClass("slick-active").attr("aria-hidden", "false"))
	}, b.prototype.visibility = function () {
		var a = this;
		a.options.autoplay && (document[a.hidden] ? a.interrupted = !0 : a.interrupted = !1)
	}, a.fn.slick = function () {
		var f, g, a = this,
			c = arguments[0],
			d = Array.prototype.slice.call(arguments, 1),
			e = a.length;
		for (f = 0; e > f; f++)
			if ("object" == typeof c || "undefined" == typeof c ? a[f].slick = new b(a[f], c) : g = a[f].slick[c].apply(a[f].slick, d), "undefined" != typeof g) return g;
		return a
	}
});

/*!
 * VERSION: 1.20.2
 * DATE: 2017-06-30
 * UPDATES AND DOCS AT: http://greensock.com
 * 
 * Includes all of the following: TweenLite, TweenMax, TimelineLite, TimelineMax, EasePack, CSSPlugin, RoundPropsPlugin, BezierPlugin, AttrPlugin, DirectionalRotationPlugin
 *
 * @license Copyright (c) 2008-2017, GreenSock. All rights reserved.
 * This work is subject to the terms at http://greensock.com/standard-license or for
 * Club GreenSock members, the software agreement that was issued with your membership.
 * 
 * @author: Jack Doyle, jack@greensock.com
 **/
var _gsScope = "undefined" != typeof module && module.exports && "undefined" != typeof global ? global : this || window;
(_gsScope._gsQueue || (_gsScope._gsQueue = [])).push(function () {
		"use strict";
		_gsScope._gsDefine("TweenMax", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function (a, b, c) {
				var d = function (a) {
						var b, c = [],
							d = a.length;
						for (b = 0; b !== d; c.push(a[b++]));
						return c
					},
					e = function (a, b, c) {
						var d, e, f = a.cycle;
						for (d in f) e = f[d], a[d] = "function" == typeof e ? e(c, b[c]) : e[c % e.length];
						delete a.cycle
					},
					f = function (a, b, d) {
						c.call(this, a, b, d), this._cycle = 0, this._yoyo = this.vars.yoyo === !0 || !!this.vars.yoyoEase, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._dirty = !0, this.render = f.prototype.render
					},
					g = 1e-10,
					h = c._internals,
					i = h.isSelector,
					j = h.isArray,
					k = f.prototype = c.to({}, .1, {}),
					l = [];
				f.version = "1.20.2", k.constructor = f, k.kill()._gc = !1, f.killTweensOf = f.killDelayedCallsTo = c.killTweensOf, f.getTweensOf = c.getTweensOf, f.lagSmoothing = c.lagSmoothing, f.ticker = c.ticker, f.render = c.render, k.invalidate = function () {
					return this._yoyo = this.vars.yoyo === !0 || !!this.vars.yoyoEase, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._yoyoEase = null, this._uncache(!0), c.prototype.invalidate.call(this)
				}, k.updateTo = function (a, b) {
					var d, e = this.ratio,
						f = this.vars.immediateRender || a.immediateRender;
					b && this._startTime < this._timeline._time && (this._startTime = this._timeline._time, this._uncache(!1), this._gc ? this._enabled(!0, !1) : this._timeline.insert(this, this._startTime - this._delay));
					for (d in a) this.vars[d] = a[d];
					if (this._initted || f)
						if (b) this._initted = !1, f && this.render(0, !0, !0);
						else if (this._gc && this._enabled(!0, !1), this._notifyPluginsOfEnabled && this._firstPT && c._onPluginEvent("_onDisable", this), this._time / this._duration > .998) {
						var g = this._totalTime;
						this.render(0, !0, !1), this._initted = !1, this.render(g, !0, !1)
					} else if (this._initted = !1, this._init(), this._time > 0 || f)
						for (var h, i = 1 / (1 - e), j = this._firstPT; j;) h = j.s + j.c, j.c *= i, j.s = h - j.c, j = j._next;
					return this
				}, k.render = function (a, b, d) {
					this._initted || 0 === this._duration && this.vars.repeat && this.invalidate();
					var e, f, i, j, k, l, m, n, o, p = this._dirty ? this.totalDuration() : this._totalDuration,
						q = this._time,
						r = this._totalTime,
						s = this._cycle,
						t = this._duration,
						u = this._rawPrevTime;
					if (a >= p - 1e-7 && a >= 0 ? (this._totalTime = p, this._cycle = this._repeat, this._yoyo && 0 !== (1 & this._cycle) ? (this._time = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0) : (this._time = t, this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1), this._reversed || (e = !0, f = "onComplete", d = d || this._timeline.autoRemoveChildren), 0 === t && (this._initted || !this.vars.lazy || d) && (this._startTime === this._timeline._duration && (a = 0), (0 > u || 0 >= a && a >= -1e-7 || u === g && "isPause" !== this.data) && u !== a && (d = !0, u > g && (f = "onReverseComplete")), this._rawPrevTime = n = !b || a || u === a ? a : g)) : 1e-7 > a ? (this._totalTime = this._time = this._cycle = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0, (0 !== r || 0 === t && u > 0) && (f = "onReverseComplete", e = this._reversed), 0 > a && (this._active = !1, 0 === t && (this._initted || !this.vars.lazy || d) && (u >= 0 && (d = !0), this._rawPrevTime = n = !b || a || u === a ? a : g)), this._initted || (d = !0)) : (this._totalTime = this._time = a, 0 !== this._repeat && (j = t + this._repeatDelay, this._cycle = this._totalTime / j >> 0, 0 !== this._cycle && this._cycle === this._totalTime / j && a >= r && this._cycle--, this._time = this._totalTime - this._cycle * j, this._yoyo && 0 !== (1 & this._cycle) && (this._time = t - this._time, o = this._yoyoEase || this.vars.yoyoEase, o && (this._yoyoEase || (o !== !0 || this._initted ? this._yoyoEase = o = o === !0 ? this._ease : o instanceof Ease ? o : Ease.map[o] : (o = this.vars.ease, this._yoyoEase = o = o ? o instanceof Ease ? o : "function" == typeof o ? new Ease(o, this.vars.easeParams) : Ease.map[o] || c.defaultEase : c.defaultEase)), this.ratio = o ? 1 - o.getRatio((t - this._time) / t) : 0)), this._time > t ? this._time = t : this._time < 0 && (this._time = 0)), this._easeType && !o ? (k = this._time / t, l = this._easeType, m = this._easePower, (1 === l || 3 === l && k >= .5) && (k = 1 - k), 3 === l && (k *= 2), 1 === m ? k *= k : 2 === m ? k *= k * k : 3 === m ? k *= k * k * k : 4 === m && (k *= k * k * k * k), 1 === l ? this.ratio = 1 - k : 2 === l ? this.ratio = k : this._time / t < .5 ? this.ratio = k / 2 : this.ratio = 1 - k / 2) : o || (this.ratio = this._ease.getRatio(this._time / t))), q === this._time && !d && s === this._cycle) return void(r !== this._totalTime && this._onUpdate && (b || this._callback("onUpdate")));
					if (!this._initted) {
						if (this._init(), !this._initted || this._gc) return;
						if (!d && this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = q, this._totalTime = r, this._rawPrevTime = u, this._cycle = s, h.lazyTweens.push(this), void(this._lazy = [a, b]);
						!this._time || e || o ? e && this._ease._calcEnd && !o && (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1)) : this.ratio = this._ease.getRatio(this._time / t)
					}
					for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== q && a >= 0 && (this._active = !0), 0 === r && (2 === this._initted && a > 0 && this._init(), this._startAt && (a >= 0 ? this._startAt.render(a, b, d) : f || (f = "_dummyGS")), this.vars.onStart && (0 !== this._totalTime || 0 === t) && (b || this._callback("onStart"))), i = this._firstPT; i;) i.f ? i.t[i.p](i.c * this.ratio + i.s) : i.t[i.p] = i.c * this.ratio + i.s, i = i._next;
					this._onUpdate && (0 > a && this._startAt && this._startTime && this._startAt.render(a, b, d), b || (this._totalTime !== r || f) && this._callback("onUpdate")), this._cycle !== s && (b || this._gc || this.vars.onRepeat && this._callback("onRepeat")), f && (!this._gc || d) && (0 > a && this._startAt && !this._onUpdate && this._startTime && this._startAt.render(a, b, d), e && (this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[f] && this._callback(f), 0 === t && this._rawPrevTime === g && n !== g && (this._rawPrevTime = 0))
				}, f.to = function (a, b, c) {
					return new f(a, b, c)
				}, f.from = function (a, b, c) {
					return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, new f(a, b, c)
				}, f.fromTo = function (a, b, c, d) {
					return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, new f(a, b, d)
				}, f.staggerTo = f.allTo = function (a, b, g, h, k, m, n) {
					h = h || 0;
					var o, p, q, r, s = 0,
						t = [],
						u = function () {
							g.onComplete && g.onComplete.apply(g.onCompleteScope || this, arguments), k.apply(n || g.callbackScope || this, m || l)
						},
						v = g.cycle,
						w = g.startAt && g.startAt.cycle;
					for (j(a) || ("string" == typeof a && (a = c.selector(a) || a), i(a) && (a = d(a))), a = a || [], 0 > h && (a = d(a), a.reverse(), h *= -1), o = a.length - 1, q = 0; o >= q; q++) {
						p = {};
						for (r in g) p[r] = g[r];
						if (v && (e(p, a, q), null != p.duration && (b = p.duration, delete p.duration)), w) {
							w = p.startAt = {};
							for (r in g.startAt) w[r] = g.startAt[r];
							e(p.startAt, a, q)
						}
						p.delay = s + (p.delay || 0), q === o && k && (p.onComplete = u), t[q] = new f(a[q], b, p), s += h
					}
					return t
				}, f.staggerFrom = f.allFrom = function (a, b, c, d, e, g, h) {
					return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, f.staggerTo(a, b, c, d, e, g, h)
				}, f.staggerFromTo = f.allFromTo = function (a, b, c, d, e, g, h, i) {
					return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, f.staggerTo(a, b, d, e, g, h, i)
				}, f.delayedCall = function (a, b, c, d, e) {
					return new f(b, 0, {
						delay: a,
						onComplete: b,
						onCompleteParams: c,
						callbackScope: d,
						onReverseComplete: b,
						onReverseCompleteParams: c,
						immediateRender: !1,
						useFrames: e,
						overwrite: 0
					})
				}, f.set = function (a, b) {
					return new f(a, 0, b)
				}, f.isTweening = function (a) {
					return c.getTweensOf(a, !0).length > 0
				};
				var m = function (a, b) {
						for (var d = [], e = 0, f = a._first; f;) f instanceof c ? d[e++] = f : (b && (d[e++] = f), d = d.concat(m(f, b)), e = d.length), f = f._next;
						return d
					},
					n = f.getAllTweens = function (b) {
						return m(a._rootTimeline, b).concat(m(a._rootFramesTimeline, b))
					};
				f.killAll = function (a, c, d, e) {
					null == c && (c = !0), null == d && (d = !0);
					var f, g, h, i = n(0 != e),
						j = i.length,
						k = c && d && e;
					for (h = 0; j > h; h++) g = i[h], (k || g instanceof b || (f = g.target === g.vars.onComplete) && d || c && !f) && (a ? g.totalTime(g._reversed ? 0 : g.totalDuration()) : g._enabled(!1, !1))
				}, f.killChildTweensOf = function (a, b) {
					if (null != a) {
						var e, g, k, l, m, n = h.tweenLookup;
						if ("string" == typeof a && (a = c.selector(a) || a), i(a) && (a = d(a)), j(a))
							for (l = a.length; --l > -1;) f.killChildTweensOf(a[l], b);
						else {
							e = [];
							for (k in n)
								for (g = n[k].target.parentNode; g;) g === a && (e = e.concat(n[k].tweens)), g = g.parentNode;
							for (m = e.length, l = 0; m > l; l++) b && e[l].totalTime(e[l].totalDuration()), e[l]._enabled(!1, !1)
						}
					}
				};
				var o = function (a, c, d, e) {
					c = c !== !1, d = d !== !1, e = e !== !1;
					for (var f, g, h = n(e), i = c && d && e, j = h.length; --j > -1;) g = h[j], (i || g instanceof b || (f = g.target === g.vars.onComplete) && d || c && !f) && g.paused(a)
				};
				return f.pauseAll = function (a, b, c) {
					o(!0, a, b, c)
				}, f.resumeAll = function (a, b, c) {
					o(!1, a, b, c)
				}, f.globalTimeScale = function (b) {
					var d = a._rootTimeline,
						e = c.ticker.time;
					return arguments.length ? (b = b || g, d._startTime = e - (e - d._startTime) * d._timeScale / b, d = a._rootFramesTimeline, e = c.ticker.frame, d._startTime = e - (e - d._startTime) * d._timeScale / b, d._timeScale = a._rootTimeline._timeScale = b, b) : d._timeScale
				}, k.progress = function (a, b) {
					return arguments.length ? this.totalTime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a : a) + this._cycle * (this._duration + this._repeatDelay), b) : this._time / this.duration()
				}, k.totalProgress = function (a, b) {
					return arguments.length ? this.totalTime(this.totalDuration() * a, b) : this._totalTime / this.totalDuration()
				}, k.time = function (a, b) {
					return arguments.length ? (this._dirty && this.totalDuration(), a > this._duration && (a = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? a = this._duration - a + this._cycle * (this._duration + this._repeatDelay) : 0 !== this._repeat && (a += this._cycle * (this._duration + this._repeatDelay)), this.totalTime(a, b)) : this._time
				}, k.duration = function (b) {
					return arguments.length ? a.prototype.duration.call(this, b) : this._duration
				}, k.totalDuration = function (a) {
					return arguments.length ? -1 === this._repeat ? this : this.duration((a - this._repeat * this._repeatDelay) / (this._repeat + 1)) : (this._dirty && (this._totalDuration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatDelay * this._repeat, this._dirty = !1), this._totalDuration)
				}, k.repeat = function (a) {
					return arguments.length ? (this._repeat = a, this._uncache(!0)) : this._repeat
				}, k.repeatDelay = function (a) {
					return arguments.length ? (this._repeatDelay = a, this._uncache(!0)) : this._repeatDelay
				}, k.yoyo = function (a) {
					return arguments.length ? (this._yoyo = a, this) : this._yoyo
				}, f
			}, !0), _gsScope._gsDefine("TimelineLite", ["core.Animation", "core.SimpleTimeline", "TweenLite"], function (a, b, c) {
				var d = function (a) {
						b.call(this, a), this._labels = {}, this.autoRemoveChildren = this.vars.autoRemoveChildren === !0, this.smoothChildTiming = this.vars.smoothChildTiming === !0, this._sortChildren = !0, this._onUpdate = this.vars.onUpdate;
						var c, d, e = this.vars;
						for (d in e) c = e[d], i(c) && -1 !== c.join("").indexOf("{self}") && (e[d] = this._swapSelfInParams(c));
						i(e.tweens) && this.add(e.tweens, 0, e.align, e.stagger)
					},
					e = 1e-10,
					f = c._internals,
					g = d._internals = {},
					h = f.isSelector,
					i = f.isArray,
					j = f.lazyTweens,
					k = f.lazyRender,
					l = _gsScope._gsDefine.globals,
					m = function (a) {
						var b, c = {};
						for (b in a) c[b] = a[b];
						return c
					},
					n = function (a, b, c) {
						var d, e, f = a.cycle;
						for (d in f) e = f[d], a[d] = "function" == typeof e ? e(c, b[c]) : e[c % e.length];
						delete a.cycle
					},
					o = g.pauseCallback = function () {},
					p = function (a) {
						var b, c = [],
							d = a.length;
						for (b = 0; b !== d; c.push(a[b++]));
						return c
					},
					q = d.prototype = new b;
				return d.version = "1.20.2", q.constructor = d, q.kill()._gc = q._forcingPlayhead = q._hasPause = !1, q.to = function (a, b, d, e) {
					var f = d.repeat && l.TweenMax || c;
					return b ? this.add(new f(a, b, d), e) : this.set(a, d, e)
				}, q.from = function (a, b, d, e) {
					return this.add((d.repeat && l.TweenMax || c).from(a, b, d), e)
				}, q.fromTo = function (a, b, d, e, f) {
					var g = e.repeat && l.TweenMax || c;
					return b ? this.add(g.fromTo(a, b, d, e), f) : this.set(a, e, f)
				}, q.staggerTo = function (a, b, e, f, g, i, j, k) {
					var l, o, q = new d({
							onComplete: i,
							onCompleteParams: j,
							callbackScope: k,
							smoothChildTiming: this.smoothChildTiming
						}),
						r = e.cycle;
					for ("string" == typeof a && (a = c.selector(a) || a), a = a || [], h(a) && (a = p(a)), f = f || 0, 0 > f && (a = p(a), a.reverse(), f *= -1), o = 0; o < a.length; o++) l = m(e), l.startAt && (l.startAt = m(l.startAt), l.startAt.cycle && n(l.startAt, a, o)), r && (n(l, a, o), null != l.duration && (b = l.duration, delete l.duration)), q.to(a[o], b, l, o * f);
					return this.add(q, g)
				}, q.staggerFrom = function (a, b, c, d, e, f, g, h) {
					return c.immediateRender = 0 != c.immediateRender, c.runBackwards = !0, this.staggerTo(a, b, c, d, e, f, g, h)
				}, q.staggerFromTo = function (a, b, c, d, e, f, g, h, i) {
					return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, this.staggerTo(a, b, d, e, f, g, h, i)
				}, q.call = function (a, b, d, e) {
					return this.add(c.delayedCall(0, a, b, d), e)
				}, q.set = function (a, b, d) {
					return d = this._parseTimeOrLabel(d, 0, !0), null == b.immediateRender && (b.immediateRender = d === this._time && !this._paused), this.add(new c(a, 0, b), d)
				}, d.exportRoot = function (a, b) {
					a = a || {}, null == a.smoothChildTiming && (a.smoothChildTiming = !0);
					var e, f, g = new d(a),
						h = g._timeline;
					for (null == b && (b = !0), h._remove(g, !0), g._startTime = 0, g._rawPrevTime = g._time = g._totalTime = h._time, e = h._first; e;) f = e._next, b && e instanceof c && e.target === e.vars.onComplete || g.add(e, e._startTime - e._delay), e = f;
					return h.add(g, 0), g
				}, q.add = function (e, f, g, h) {
					var j, k, l, m, n, o;
					if ("number" != typeof f && (f = this._parseTimeOrLabel(f, 0, !0, e)), !(e instanceof a)) {
						if (e instanceof Array || e && e.push && i(e)) {
							for (g = g || "normal", h = h || 0, j = f, k = e.length, l = 0; k > l; l++) i(m = e[l]) && (m = new d({
								tweens: m
							})), this.add(m, j), "string" != typeof m && "function" != typeof m && ("sequence" === g ? j = m._startTime + m.totalDuration() / m._timeScale : "start" === g && (m._startTime -= m.delay())), j += h;
							return this._uncache(!0)
						}
						if ("string" == typeof e) return this.addLabel(e, f);
						if ("function" != typeof e) throw "Cannot add " + e + " into the timeline; it is not a tween, timeline, function, or string.";
						e = c.delayedCall(0, e)
					}
					if (b.prototype.add.call(this, e, f), e._time && e.render((this.rawTime() - e._startTime) * e._timeScale, !1, !1), (this._gc || this._time === this._duration) && !this._paused && this._duration < this.duration())
						for (n = this, o = n.rawTime() > e._startTime; n._timeline;) o && n._timeline.smoothChildTiming ? n.totalTime(n._totalTime, !0) : n._gc && n._enabled(!0, !1), n = n._timeline;
					return this
				}, q.remove = function (b) {
					if (b instanceof a) {
						this._remove(b, !1);
						var c = b._timeline = b.vars.useFrames ? a._rootFramesTimeline : a._rootTimeline;
						return b._startTime = (b._paused ? b._pauseTime : c._time) - (b._reversed ? b.totalDuration() - b._totalTime : b._totalTime) / b._timeScale, this
					}
					if (b instanceof Array || b && b.push && i(b)) {
						for (var d = b.length; --d > -1;) this.remove(b[d]);
						return this
					}
					return "string" == typeof b ? this.removeLabel(b) : this.kill(null, b)
				}, q._remove = function (a, c) {
					b.prototype._remove.call(this, a, c);
					var d = this._last;
					return d ? this._time > this.duration() && (this._time = this._duration, this._totalTime = this._totalDuration) : this._time = this._totalTime = this._duration = this._totalDuration = 0, this
				}, q.append = function (a, b) {
					return this.add(a, this._parseTimeOrLabel(null, b, !0, a))
				}, q.insert = q.insertMultiple = function (a, b, c, d) {
					return this.add(a, b || 0, c, d)
				}, q.appendMultiple = function (a, b, c, d) {
					return this.add(a, this._parseTimeOrLabel(null, b, !0, a), c, d)
				}, q.addLabel = function (a, b) {
					return this._labels[a] = this._parseTimeOrLabel(b), this
				}, q.addPause = function (a, b, d, e) {
					var f = c.delayedCall(0, o, d, e || this);
					return f.vars.onComplete = f.vars.onReverseComplete = b, f.data = "isPause", this._hasPause = !0, this.add(f, a)
				}, q.removeLabel = function (a) {
					return delete this._labels[a], this
				}, q.getLabelTime = function (a) {
					return null != this._labels[a] ? this._labels[a] : -1
				}, q._parseTimeOrLabel = function (b, c, d, e) {
					var f, g;
					if (e instanceof a && e.timeline === this) this.remove(e);
					else if (e && (e instanceof Array || e.push && i(e)))
						for (g = e.length; --g > -1;) e[g] instanceof a && e[g].timeline === this && this.remove(e[g]);
					if (f = this.duration() > 99999999999 ? this.recent().endTime(!1) : this._duration, "string" == typeof c) return this._parseTimeOrLabel(c, d && "number" == typeof b && null == this._labels[c] ? b - f : 0, d);
					if (c = c || 0, "string" != typeof b || !isNaN(b) && null == this._labels[b]) null == b && (b = f);
					else {
						if (g = b.indexOf("="), -1 === g) return null == this._labels[b] ? d ? this._labels[b] = f + c : c : this._labels[b] + c;
						c = parseInt(b.charAt(g - 1) + "1", 10) * Number(b.substr(g + 1)), b = g > 1 ? this._parseTimeOrLabel(b.substr(0, g - 1), 0, d) : f
					}
					return Number(b) + c
				}, q.seek = function (a, b) {
					return this.totalTime("number" == typeof a ? a : this._parseTimeOrLabel(a), b !== !1)
				}, q.stop = function () {
					return this.paused(!0)
				}, q.gotoAndPlay = function (a, b) {
					return this.play(a, b)
				}, q.gotoAndStop = function (a, b) {
					return this.pause(a, b)
				}, q.render = function (a, b, c) {
					this._gc && this._enabled(!0, !1);
					var d, f, g, h, i, l, m, n = this._dirty ? this.totalDuration() : this._totalDuration,
						o = this._time,
						p = this._startTime,
						q = this._timeScale,
						r = this._paused;
					if (a >= n - 1e-7 && a >= 0) this._totalTime = this._time = n, this._reversed || this._hasPausedChild() || (f = !0, h = "onComplete", i = !!this._timeline.autoRemoveChildren, 0 === this._duration && (0 >= a && a >= -1e-7 || this._rawPrevTime < 0 || this._rawPrevTime === e) && this._rawPrevTime !== a && this._first && (i = !0, this._rawPrevTime > e && (h = "onReverseComplete"))), this._rawPrevTime = this._duration || !b || a || this._rawPrevTime === a ? a : e, a = n + 1e-4;
					else if (1e-7 > a)
						if (this._totalTime = this._time = 0, (0 !== o || 0 === this._duration && this._rawPrevTime !== e && (this._rawPrevTime > 0 || 0 > a && this._rawPrevTime >= 0)) && (h = "onReverseComplete", f = this._reversed), 0 > a) this._active = !1, this._timeline.autoRemoveChildren && this._reversed ? (i = f = !0, h = "onReverseComplete") : this._rawPrevTime >= 0 && this._first && (i = !0), this._rawPrevTime = a;
						else {
							if (this._rawPrevTime = this._duration || !b || a || this._rawPrevTime === a ? a : e, 0 === a && f)
								for (d = this._first; d && 0 === d._startTime;) d._duration || (f = !1), d = d._next;
							a = 0, this._initted || (i = !0)
						}
					else {
						if (this._hasPause && !this._forcingPlayhead && !b) {
							if (a >= o)
								for (d = this._first; d && d._startTime <= a && !l;) d._duration || "isPause" !== d.data || d.ratio || 0 === d._startTime && 0 === this._rawPrevTime || (l = d), d = d._next;
							else
								for (d = this._last; d && d._startTime >= a && !l;) d._duration || "isPause" === d.data && d._rawPrevTime > 0 && (l = d), d = d._prev;
							l && (this._time = a = l._startTime, this._totalTime = a + this._cycle * (this._totalDuration + this._repeatDelay))
						}
						this._totalTime = this._time = this._rawPrevTime = a
					}
					if (this._time !== o && this._first || c || i || l) {
						if (this._initted || (this._initted = !0), this._active || !this._paused && this._time !== o && a > 0 && (this._active = !0), 0 === o && this.vars.onStart && (0 === this._time && this._duration || b || this._callback("onStart")), m = this._time, m >= o)
							for (d = this._first; d && (g = d._next, m === this._time && (!this._paused || r));)(d._active || d._startTime <= m && !d._paused && !d._gc) && (l === d && this.pause(), d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c)), d = g;
						else
							for (d = this._last; d && (g = d._prev, m === this._time && (!this._paused || r));) {
								if (d._active || d._startTime <= o && !d._paused && !d._gc) {
									if (l === d) {
										for (l = d._prev; l && l.endTime() > this._time;) l.render(l._reversed ? l.totalDuration() - (a - l._startTime) * l._timeScale : (a - l._startTime) * l._timeScale, b, c), l = l._prev;
										l = null, this.pause()
									}
									d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c)
								}
								d = g
							}
						this._onUpdate && (b || (j.length && k(), this._callback("onUpdate"))), h && (this._gc || (p === this._startTime || q !== this._timeScale) && (0 === this._time || n >= this.totalDuration()) && (f && (j.length && k(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[h] && this._callback(h)))
					}
				}, q._hasPausedChild = function () {
					for (var a = this._first; a;) {
						if (a._paused || a instanceof d && a._hasPausedChild()) return !0;
						a = a._next
					}
					return !1
				}, q.getChildren = function (a, b, d, e) {
					e = e || -9999999999;
					for (var f = [], g = this._first, h = 0; g;) g._startTime < e || (g instanceof c ? b !== !1 && (f[h++] = g) : (d !== !1 && (f[h++] = g), a !== !1 && (f = f.concat(g.getChildren(!0, b, d)), h = f.length))), g = g._next;
					return f
				}, q.getTweensOf = function (a, b) {
					var d, e, f = this._gc,
						g = [],
						h = 0;
					for (f && this._enabled(!0, !0), d = c.getTweensOf(a), e = d.length; --e > -1;)(d[e].timeline === this || b && this._contains(d[e])) && (g[h++] = d[e]);
					return f && this._enabled(!1, !0), g
				}, q.recent = function () {
					return this._recent
				}, q._contains = function (a) {
					for (var b = a.timeline; b;) {
						if (b === this) return !0;
						b = b.timeline
					}
					return !1
				}, q.shiftChildren = function (a, b, c) {
					c = c || 0;
					for (var d, e = this._first, f = this._labels; e;) e._startTime >= c && (e._startTime += a), e = e._next;
					if (b)
						for (d in f) f[d] >= c && (f[d] += a);
					return this._uncache(!0)
				}, q._kill = function (a, b) {
					if (!a && !b) return this._enabled(!1, !1);
					for (var c = b ? this.getTweensOf(b) : this.getChildren(!0, !0, !1), d = c.length, e = !1; --d > -1;) c[d]._kill(a, b) && (e = !0);
					return e
				}, q.clear = function (a) {
					var b = this.getChildren(!1, !0, !0),
						c = b.length;
					for (this._time = this._totalTime = 0; --c > -1;) b[c]._enabled(!1, !1);
					return a !== !1 && (this._labels = {}), this._uncache(!0)
				}, q.invalidate = function () {
					for (var b = this._first; b;) b.invalidate(), b = b._next;
					return a.prototype.invalidate.call(this)
				}, q._enabled = function (a, c) {
					if (a === this._gc)
						for (var d = this._first; d;) d._enabled(a, !0), d = d._next;
					return b.prototype._enabled.call(this, a, c)
				}, q.totalTime = function (b, c, d) {
					this._forcingPlayhead = !0;
					var e = a.prototype.totalTime.apply(this, arguments);
					return this._forcingPlayhead = !1, e
				}, q.duration = function (a) {
					return arguments.length ? (0 !== this.duration() && 0 !== a && this.timeScale(this._duration / a), this) : (this._dirty && this.totalDuration(), this._duration)
				}, q.totalDuration = function (a) {
					if (!arguments.length) {
						if (this._dirty) {
							for (var b, c, d = 0, e = this._last, f = 999999999999; e;) b = e._prev, e._dirty && e.totalDuration(), e._startTime > f && this._sortChildren && !e._paused ? this.add(e, e._startTime - e._delay) : f = e._startTime, e._startTime < 0 && !e._paused && (d -= e._startTime, this._timeline.smoothChildTiming && (this._startTime += e._startTime / this._timeScale), this.shiftChildren(-e._startTime, !1, -9999999999), f = 0), c = e._startTime + e._totalDuration / e._timeScale, c > d && (d = c), e = b;
							this._duration = this._totalDuration = d, this._dirty = !1
						}
						return this._totalDuration
					}
					return a && this.totalDuration() ? this.timeScale(this._totalDuration / a) : this
				}, q.paused = function (b) {
					if (!b)
						for (var c = this._first, d = this._time; c;) c._startTime === d && "isPause" === c.data && (c._rawPrevTime = 0), c = c._next;
					return a.prototype.paused.apply(this, arguments)
				}, q.usesFrames = function () {
					for (var b = this._timeline; b._timeline;) b = b._timeline;
					return b === a._rootFramesTimeline
				}, q.rawTime = function (a) {
					return a && (this._paused || this._repeat && this.time() > 0 && this.totalProgress() < 1) ? this._totalTime % (this._duration + this._repeatDelay) : this._paused ? this._totalTime : (this._timeline.rawTime(a) - this._startTime) * this._timeScale
				}, d
			}, !0), _gsScope._gsDefine("TimelineMax", ["TimelineLite", "TweenLite", "easing.Ease"], function (a, b, c) {
				var d = function (b) {
						a.call(this, b), this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._cycle = 0, this._yoyo = this.vars.yoyo === !0, this._dirty = !0
					},
					e = 1e-10,
					f = b._internals,
					g = f.lazyTweens,
					h = f.lazyRender,
					i = _gsScope._gsDefine.globals,
					j = new c(null, null, 1, 0),
					k = d.prototype = new a;
				return k.constructor = d, k.kill()._gc = !1, d.version = "1.20.2", k.invalidate = function () {
					return this._yoyo = this.vars.yoyo === !0, this._repeat = this.vars.repeat || 0, this._repeatDelay = this.vars.repeatDelay || 0, this._uncache(!0), a.prototype.invalidate.call(this)
				}, k.addCallback = function (a, c, d, e) {
					return this.add(b.delayedCall(0, a, d, e), c)
				}, k.removeCallback = function (a, b) {
					if (a)
						if (null == b) this._kill(null, a);
						else
							for (var c = this.getTweensOf(a, !1), d = c.length, e = this._parseTimeOrLabel(b); --d > -1;) c[d]._startTime === e && c[d]._enabled(!1, !1);
					return this
				}, k.removePause = function (b) {
					return this.removeCallback(a._internals.pauseCallback, b)
				}, k.tweenTo = function (a, c) {
					c = c || {};
					var d, e, f, g = {
							ease: j,
							useFrames: this.usesFrames(),
							immediateRender: !1
						},
						h = c.repeat && i.TweenMax || b;
					for (e in c) g[e] = c[e];
					return g.time = this._parseTimeOrLabel(a), d = Math.abs(Number(g.time) - this._time) / this._timeScale || .001, f = new h(this, d, g), g.onStart = function () {
						f.target.paused(!0), f.vars.time !== f.target.time() && d === f.duration() && f.duration(Math.abs(f.vars.time - f.target.time()) / f.target._timeScale), c.onStart && c.onStart.apply(c.onStartScope || c.callbackScope || f, c.onStartParams || [])
					}, f
				}, k.tweenFromTo = function (a, b, c) {
					c = c || {}, a = this._parseTimeOrLabel(a), c.startAt = {
						onComplete: this.seek,
						onCompleteParams: [a],
						callbackScope: this
					}, c.immediateRender = c.immediateRender !== !1;
					var d = this.tweenTo(b, c);
					return d.duration(Math.abs(d.vars.time - a) / this._timeScale || .001)
				}, k.render = function (a, b, c) {
					this._gc && this._enabled(!0, !1);
					var d, f, i, j, k, l, m, n, o = this._dirty ? this.totalDuration() : this._totalDuration,
						p = this._duration,
						q = this._time,
						r = this._totalTime,
						s = this._startTime,
						t = this._timeScale,
						u = this._rawPrevTime,
						v = this._paused,
						w = this._cycle;
					if (a >= o - 1e-7 && a >= 0) this._locked || (this._totalTime = o, this._cycle = this._repeat), this._reversed || this._hasPausedChild() || (f = !0, j = "onComplete", k = !!this._timeline.autoRemoveChildren, 0 === this._duration && (0 >= a && a >= -1e-7 || 0 > u || u === e) && u !== a && this._first && (k = !0, u > e && (j = "onReverseComplete"))), this._rawPrevTime = this._duration || !b || a || this._rawPrevTime === a ? a : e, this._yoyo && 0 !== (1 & this._cycle) ? this._time = a = 0 : (this._time = p, a = p + 1e-4);
					else if (1e-7 > a)
						if (this._locked || (this._totalTime = this._cycle = 0), this._time = 0, (0 !== q || 0 === p && u !== e && (u > 0 || 0 > a && u >= 0) && !this._locked) && (j = "onReverseComplete", f = this._reversed), 0 > a) this._active = !1, this._timeline.autoRemoveChildren && this._reversed ? (k = f = !0, j = "onReverseComplete") : u >= 0 && this._first && (k = !0), this._rawPrevTime = a;
						else {
							if (this._rawPrevTime = p || !b || a || this._rawPrevTime === a ? a : e, 0 === a && f)
								for (d = this._first; d && 0 === d._startTime;) d._duration || (f = !1), d = d._next;
							a = 0, this._initted || (k = !0)
						}
					else if (0 === p && 0 > u && (k = !0), this._time = this._rawPrevTime = a, this._locked || (this._totalTime = a, 0 !== this._repeat && (l = p + this._repeatDelay, this._cycle = this._totalTime / l >> 0, 0 !== this._cycle && this._cycle === this._totalTime / l && a >= r && this._cycle--, this._time = this._totalTime - this._cycle * l, this._yoyo && 0 !== (1 & this._cycle) && (this._time = p - this._time), this._time > p ? (this._time = p, a = p + 1e-4) : this._time < 0 ? this._time = a = 0 : a = this._time)), this._hasPause && !this._forcingPlayhead && !b) {
						if (a = this._time, a >= q || this._repeat && w !== this._cycle)
							for (d = this._first; d && d._startTime <= a && !m;) d._duration || "isPause" !== d.data || d.ratio || 0 === d._startTime && 0 === this._rawPrevTime || (m = d), d = d._next;
						else
							for (d = this._last; d && d._startTime >= a && !m;) d._duration || "isPause" === d.data && d._rawPrevTime > 0 && (m = d), d = d._prev;
						m && m._startTime < p && (this._time = a = m._startTime, this._totalTime = a + this._cycle * (this._totalDuration + this._repeatDelay))
					}
					if (this._cycle !== w && !this._locked) {
						var x = this._yoyo && 0 !== (1 & w),
							y = x === (this._yoyo && 0 !== (1 & this._cycle)),
							z = this._totalTime,
							A = this._cycle,
							B = this._rawPrevTime,
							C = this._time;
						if (this._totalTime = w * p, this._cycle < w ? x = !x : this._totalTime += p, this._time = q, this._rawPrevTime = 0 === p ? u - 1e-4 : u, this._cycle = w, this._locked = !0, q = x ? 0 : p, this.render(q, b, 0 === p), b || this._gc || this.vars.onRepeat && (this._cycle = A, this._locked = !1, this._callback("onRepeat")), q !== this._time) return;
						if (y && (this._cycle = w, this._locked = !0, q = x ? p + 1e-4 : -1e-4, this.render(q, !0, !1)), this._locked = !1, this._paused && !v) return;
						this._time = C, this._totalTime = z, this._cycle = A, this._rawPrevTime = B
					}
					if (!(this._time !== q && this._first || c || k || m)) return void(r !== this._totalTime && this._onUpdate && (b || this._callback("onUpdate")));
					if (this._initted || (this._initted = !0), this._active || !this._paused && this._totalTime !== r && a > 0 && (this._active = !0), 0 === r && this.vars.onStart && (0 === this._totalTime && this._totalDuration || b || this._callback("onStart")), n = this._time, n >= q)
						for (d = this._first; d && (i = d._next, n === this._time && (!this._paused || v));)(d._active || d._startTime <= this._time && !d._paused && !d._gc) && (m === d && this.pause(), d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c)), d = i;
					else
						for (d = this._last; d && (i = d._prev, n === this._time && (!this._paused || v));) {
							if (d._active || d._startTime <= q && !d._paused && !d._gc) {
								if (m === d) {
									for (m = d._prev; m && m.endTime() > this._time;) m.render(m._reversed ? m.totalDuration() - (a - m._startTime) * m._timeScale : (a - m._startTime) * m._timeScale, b, c), m = m._prev;
									m = null, this.pause()
								}
								d._reversed ? d.render((d._dirty ? d.totalDuration() : d._totalDuration) - (a - d._startTime) * d._timeScale, b, c) : d.render((a - d._startTime) * d._timeScale, b, c)
							}
							d = i
						}
					this._onUpdate && (b || (g.length && h(), this._callback("onUpdate"))), j && (this._locked || this._gc || (s === this._startTime || t !== this._timeScale) && (0 === this._time || o >= this.totalDuration()) && (f && (g.length && h(), this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[j] && this._callback(j)))
				}, k.getActive = function (a, b, c) {
					null == a && (a = !0), null == b && (b = !0), null == c && (c = !1);
					var d, e, f = [],
						g = this.getChildren(a, b, c),
						h = 0,
						i = g.length;
					for (d = 0; i > d; d++) e = g[d], e.isActive() && (f[h++] = e);
					return f
				}, k.getLabelAfter = function (a) {
					a || 0 !== a && (a = this._time);
					var b, c = this.getLabelsArray(),
						d = c.length;
					for (b = 0; d > b; b++)
						if (c[b].time > a) return c[b].name;
					return null
				}, k.getLabelBefore = function (a) {
					null == a && (a = this._time);
					for (var b = this.getLabelsArray(), c = b.length; --c > -1;)
						if (b[c].time < a) return b[c].name;
					return null
				}, k.getLabelsArray = function () {
					var a, b = [],
						c = 0;
					for (a in this._labels) b[c++] = {
						time: this._labels[a],
						name: a
					};
					return b.sort(function (a, b) {
						return a.time - b.time
					}), b
				}, k.invalidate = function () {
					return this._locked = !1, a.prototype.invalidate.call(this)
				}, k.progress = function (a, b) {
					return arguments.length ? this.totalTime(this.duration() * (this._yoyo && 0 !== (1 & this._cycle) ? 1 - a : a) + this._cycle * (this._duration + this._repeatDelay), b) : this._time / this.duration() || 0
				}, k.totalProgress = function (a, b) {
					return arguments.length ? this.totalTime(this.totalDuration() * a, b) : this._totalTime / this.totalDuration() || 0
				}, k.totalDuration = function (b) {
					return arguments.length ? -1 !== this._repeat && b ? this.timeScale(this.totalDuration() / b) : this : (this._dirty && (a.prototype.totalDuration.call(this), this._totalDuration = -1 === this._repeat ? 999999999999 : this._duration * (this._repeat + 1) + this._repeatDelay * this._repeat), this._totalDuration)
				}, k.time = function (a, b) {
					return arguments.length ? (this._dirty && this.totalDuration(), a > this._duration && (a = this._duration), this._yoyo && 0 !== (1 & this._cycle) ? a = this._duration - a + this._cycle * (this._duration + this._repeatDelay) : 0 !== this._repeat && (a += this._cycle * (this._duration + this._repeatDelay)), this.totalTime(a, b)) : this._time
				}, k.repeat = function (a) {
					return arguments.length ? (this._repeat = a, this._uncache(!0)) : this._repeat
				}, k.repeatDelay = function (a) {
					return arguments.length ? (this._repeatDelay = a, this._uncache(!0)) : this._repeatDelay
				}, k.yoyo = function (a) {
					return arguments.length ? (this._yoyo = a, this) : this._yoyo
				}, k.currentLabel = function (a) {
					return arguments.length ? this.seek(a, !0) : this.getLabelBefore(this._time + 1e-8)
				}, d
			}, !0),
			function () {
				var a = 180 / Math.PI,
					b = [],
					c = [],
					d = [],
					e = {},
					f = _gsScope._gsDefine.globals,
					g = function (a, b, c, d) {
						c === d && (c = d - (d - b) / 1e6), a === b && (b = a + (c - a) / 1e6), this.a = a, this.b = b, this.c = c, this.d = d, this.da = d - a, this.ca = c - a, this.ba = b - a
					},
					h = ",x,y,z,left,top,right,bottom,marginTop,marginLeft,marginRight,marginBottom,paddingLeft,paddingTop,paddingRight,paddingBottom,backgroundPosition,backgroundPosition_y,",
					i = function (a, b, c, d) {
						var e = {
								a: a
							},
							f = {},
							g = {},
							h = {
								c: d
							},
							i = (a + b) / 2,
							j = (b + c) / 2,
							k = (c + d) / 2,
							l = (i + j) / 2,
							m = (j + k) / 2,
							n = (m - l) / 8;
						return e.b = i + (a - i) / 4, f.b = l + n, e.c = f.a = (e.b + f.b) / 2, f.c = g.a = (l + m) / 2, g.b = m - n, h.b = k + (d - k) / 4, g.c = h.a = (g.b + h.b) / 2, [e, f, g, h]
					},
					j = function (a, e, f, g, h) {
						var j, k, l, m, n, o, p, q, r, s, t, u, v, w = a.length - 1,
							x = 0,
							y = a[0].a;
						for (j = 0; w > j; j++) n = a[x], k = n.a, l = n.d, m = a[x + 1].d, h ? (t = b[j], u = c[j], v = (u + t) * e * .25 / (g ? .5 : d[j] || .5), o = l - (l - k) * (g ? .5 * e : 0 !== t ? v / t : 0), p = l + (m - l) * (g ? .5 * e : 0 !== u ? v / u : 0), q = l - (o + ((p - o) * (3 * t / (t + u) + .5) / 4 || 0))) : (o = l - (l - k) * e * .5, p = l + (m - l) * e * .5, q = l - (o + p) / 2), o += q, p += q, n.c = r = o, 0 !== j ? n.b = y : n.b = y = n.a + .6 * (n.c - n.a), n.da = l - k, n.ca = r - k, n.ba = y - k, f ? (s = i(k, y, r, l), a.splice(x, 1, s[0], s[1], s[2], s[3]), x += 4) : x++, y = p;
						n = a[x], n.b = y, n.c = y + .4 * (n.d - y), n.da = n.d - n.a, n.ca = n.c - n.a, n.ba = y - n.a, f && (s = i(n.a, y, n.c, n.d), a.splice(x, 1, s[0], s[1], s[2], s[3]))
					},
					k = function (a, d, e, f) {
						var h, i, j, k, l, m, n = [];
						if (f)
							for (a = [f].concat(a), i = a.length; --i > -1;) "string" == typeof (m = a[i][d]) && "=" === m.charAt(1) && (a[i][d] = f[d] + Number(m.charAt(0) + m.substr(2)));
						if (h = a.length - 2, 0 > h) return n[0] = new g(a[0][d], 0, 0, a[0][d]), n;
						for (i = 0; h > i; i++) j = a[i][d], k = a[i + 1][d], n[i] = new g(j, 0, 0, k), e && (l = a[i + 2][d], b[i] = (b[i] || 0) + (k - j) * (k - j), c[i] = (c[i] || 0) + (l - k) * (l - k));
						return n[i] = new g(a[i][d], 0, 0, a[i + 1][d]), n
					},
					l = function (a, f, g, i, l, m) {
						var n, o, p, q, r, s, t, u, v = {},
							w = [],
							x = m || a[0];
						l = "string" == typeof l ? "," + l + "," : h, null == f && (f = 1);
						for (o in a[0]) w.push(o);
						if (a.length > 1) {
							for (u = a[a.length - 1], t = !0, n = w.length; --n > -1;)
								if (o = w[n], Math.abs(x[o] - u[o]) > .05) {
									t = !1;
									break
								}
							t && (a = a.concat(), m && a.unshift(m), a.push(a[1]), m = a[a.length - 3])
						}
						for (b.length = c.length = d.length = 0, n = w.length; --n > -1;) o = w[n], e[o] = -1 !== l.indexOf("," + o + ","), v[o] = k(a, o, e[o], m);
						for (n = b.length; --n > -1;) b[n] = Math.sqrt(b[n]), c[n] = Math.sqrt(c[n]);
						if (!i) {
							for (n = w.length; --n > -1;)
								if (e[o])
									for (p = v[w[n]], s = p.length - 1, q = 0; s > q; q++) r = p[q + 1].da / c[q] + p[q].da / b[q] || 0, d[q] = (d[q] || 0) + r * r;
							for (n = d.length; --n > -1;) d[n] = Math.sqrt(d[n])
						}
						for (n = w.length, q = g ? 4 : 1; --n > -1;) o = w[n], p = v[o], j(p, f, g, i, e[o]), t && (p.splice(0, q), p.splice(p.length - q, q));
						return v
					},
					m = function (a, b, c) {
						b = b || "soft";
						var d, e, f, h, i, j, k, l, m, n, o, p = {},
							q = "cubic" === b ? 3 : 2,
							r = "soft" === b,
							s = [];
						if (r && c && (a = [c].concat(a)), null == a || a.length < q + 1) throw "invalid Bezier data";
						for (m in a[0]) s.push(m);
						for (j = s.length; --j > -1;) {
							for (m = s[j], p[m] = i = [], n = 0, l = a.length, k = 0; l > k; k++) d = null == c ? a[k][m] : "string" == typeof (o = a[k][m]) && "=" === o.charAt(1) ? c[m] + Number(o.charAt(0) + o.substr(2)) : Number(o), r && k > 1 && l - 1 > k && (i[n++] = (d + i[n - 2]) / 2), i[n++] = d;
							for (l = n - q + 1, n = 0, k = 0; l > k; k += q) d = i[k], e = i[k + 1], f = i[k + 2], h = 2 === q ? 0 : i[k + 3], i[n++] = o = 3 === q ? new g(d, e, f, h) : new g(d, (2 * e + d) / 3, (2 * e + f) / 3, f);
							i.length = n
						}
						return p
					},
					n = function (a, b, c) {
						for (var d, e, f, g, h, i, j, k, l, m, n, o = 1 / c, p = a.length; --p > -1;)
							for (m = a[p], f = m.a, g = m.d - f, h = m.c - f, i = m.b - f, d = e = 0, k = 1; c >= k; k++) j = o * k, l = 1 - j, d = e - (e = (j * j * g + 3 * l * (j * h + l * i)) * j), n = p * c + k - 1, b[n] = (b[n] || 0) + d * d
					},
					o = function (a, b) {
						b = b >> 0 || 6;
						var c, d, e, f, g = [],
							h = [],
							i = 0,
							j = 0,
							k = b - 1,
							l = [],
							m = [];
						for (c in a) n(a[c], g, b);
						for (e = g.length, d = 0; e > d; d++) i += Math.sqrt(g[d]), f = d % b, m[f] = i, f === k && (j += i, f = d / b >> 0, l[f] = m, h[f] = j, i = 0, m = []);
						return {
							length: j,
							lengths: h,
							segments: l
						}
					},
					p = _gsScope._gsDefine.plugin({
						propName: "bezier",
						priority: -1,
						version: "1.3.8",
						API: 2,
						global: !0,
						init: function (a, b, c) {
							this._target = a, b instanceof Array && (b = {
								values: b
							}), this._func = {}, this._mod = {}, this._props = [], this._timeRes = null == b.timeResolution ? 6 : parseInt(b.timeResolution, 10);
							var d, e, f, g, h, i = b.values || [],
								j = {},
								k = i[0],
								n = b.autoRotate || c.vars.orientToBezier;
							this._autoRotate = n ? n instanceof Array ? n : [
								["x", "y", "rotation", n === !0 ? 0 : Number(n) || 0]
							] : null;
							for (d in k) this._props.push(d);
							for (f = this._props.length; --f > -1;) d = this._props[f], this._overwriteProps.push(d), e = this._func[d] = "function" == typeof a[d], j[d] = e ? a[d.indexOf("set") || "function" != typeof a["get" + d.substr(3)] ? d : "get" + d.substr(3)]() : parseFloat(a[d]), h || j[d] !== i[0][d] && (h = j);
							if (this._beziers = "cubic" !== b.type && "quadratic" !== b.type && "soft" !== b.type ? l(i, isNaN(b.curviness) ? 1 : b.curviness, !1, "thruBasic" === b.type, b.correlate, h) : m(i, b.type, j), this._segCount = this._beziers[d].length, this._timeRes) {
								var p = o(this._beziers, this._timeRes);
								this._length = p.length, this._lengths = p.lengths, this._segments = p.segments, this._l1 = this._li = this._s1 = this._si = 0, this._l2 = this._lengths[0], this._curSeg = this._segments[0], this._s2 = this._curSeg[0], this._prec = 1 / this._curSeg.length
							}
							if (n = this._autoRotate)
								for (this._initialRotations = [], n[0] instanceof Array || (this._autoRotate = n = [n]), f = n.length; --f > -1;) {
									for (g = 0; 3 > g; g++) d = n[f][g], this._func[d] = "function" == typeof a[d] ? a[d.indexOf("set") || "function" != typeof a["get" + d.substr(3)] ? d : "get" + d.substr(3)] : !1;
									d = n[f][2], this._initialRotations[f] = (this._func[d] ? this._func[d].call(this._target) : this._target[d]) || 0, this._overwriteProps.push(d)
								}
							return this._startRatio = c.vars.runBackwards ? 1 : 0, !0
						},
						set: function (b) {
							var c, d, e, f, g, h, i, j, k, l, m = this._segCount,
								n = this._func,
								o = this._target,
								p = b !== this._startRatio;
							if (this._timeRes) {
								if (k = this._lengths, l = this._curSeg, b *= this._length, e = this._li, b > this._l2 && m - 1 > e) {
									for (j = m - 1; j > e && (this._l2 = k[++e]) <= b;);
									this._l1 = k[e - 1], this._li = e, this._curSeg = l = this._segments[e], this._s2 = l[this._s1 = this._si = 0]
								} else if (b < this._l1 && e > 0) {
									for (; e > 0 && (this._l1 = k[--e]) >= b;);
									0 === e && b < this._l1 ? this._l1 = 0 : e++, this._l2 = k[e], this._li = e, this._curSeg = l = this._segments[e], this._s1 = l[(this._si = l.length - 1) - 1] || 0, this._s2 = l[this._si]
								}
								if (c = e, b -= this._l1, e = this._si, b > this._s2 && e < l.length - 1) {
									for (j = l.length - 1; j > e && (this._s2 = l[++e]) <= b;);
									this._s1 = l[e - 1], this._si = e
								} else if (b < this._s1 && e > 0) {
									for (; e > 0 && (this._s1 = l[--e]) >= b;);
									0 === e && b < this._s1 ? this._s1 = 0 : e++, this._s2 = l[e], this._si = e
								}
								h = (e + (b - this._s1) / (this._s2 - this._s1)) * this._prec || 0
							} else c = 0 > b ? 0 : b >= 1 ? m - 1 : m * b >> 0, h = (b - c * (1 / m)) * m;
							for (d = 1 - h, e = this._props.length; --e > -1;) f = this._props[e], g = this._beziers[f][c], i = (h * h * g.da + 3 * d * (h * g.ca + d * g.ba)) * h + g.a, this._mod[f] && (i = this._mod[f](i, o)), n[f] ? o[f](i) : o[f] = i;
							if (this._autoRotate) {
								var q, r, s, t, u, v, w, x = this._autoRotate;
								for (e = x.length; --e > -1;) f = x[e][2], v = x[e][3] || 0, w = x[e][4] === !0 ? 1 : a, g = this._beziers[x[e][0]], q = this._beziers[x[e][1]], g && q && (g = g[c], q = q[c], r = g.a + (g.b - g.a) * h, t = g.b + (g.c - g.b) * h, r += (t - r) * h, t += (g.c + (g.d - g.c) * h - t) * h, s = q.a + (q.b - q.a) * h, u = q.b + (q.c - q.b) * h, s += (u - s) * h, u += (q.c + (q.d - q.c) * h - u) * h, i = p ? Math.atan2(u - s, t - r) * w + v : this._initialRotations[e], this._mod[f] && (i = this._mod[f](i, o)), n[f] ? o[f](i) : o[f] = i)
							}
						}
					}),
					q = p.prototype;
				p.bezierThrough = l, p.cubicToQuadratic = i, p._autoCSS = !0, p.quadraticToCubic = function (a, b, c) {
					return new g(a, (2 * b + a) / 3, (2 * b + c) / 3, c)
				}, p._cssRegister = function () {
					var a = f.CSSPlugin;
					if (a) {
						var b = a._internals,
							c = b._parseToProxy,
							d = b._setPluginRatio,
							e = b.CSSPropTween;
						b._registerComplexSpecialProp("bezier", {
							parser: function (a, b, f, g, h, i) {
								b instanceof Array && (b = {
									values: b
								}), i = new p;
								var j, k, l, m = b.values,
									n = m.length - 1,
									o = [],
									q = {};
								if (0 > n) return h;
								for (j = 0; n >= j; j++) l = c(a, m[j], g, h, i, n !== j), o[j] = l.end;
								for (k in b) q[k] = b[k];
								return q.values = o, h = new e(a, "bezier", 0, 0, l.pt, 2), h.data = l, h.plugin = i, h.setRatio = d, 0 === q.autoRotate && (q.autoRotate = !0), !q.autoRotate || q.autoRotate instanceof Array || (j = q.autoRotate === !0 ? 0 : Number(q.autoRotate), q.autoRotate = null != l.end.left ? [
									["left", "top", "rotation", j, !1]
								] : null != l.end.x ? [
									["x", "y", "rotation", j, !1]
								] : !1), q.autoRotate && (g._transform || g._enableTransforms(!1), l.autoRotate = g._target._gsTransform, l.proxy.rotation = l.autoRotate.rotation || 0, g._overwriteProps.push("rotation")), i._onInitTween(l.proxy, q, g._tween), h
							}
						})
					}
				}, q._mod = function (a) {
					for (var b, c = this._overwriteProps, d = c.length; --d > -1;) b = a[c[d]], b && "function" == typeof b && (this._mod[c[d]] = b)
				}, q._kill = function (a) {
					var b, c, d = this._props;
					for (b in this._beziers)
						if (b in a)
							for (delete this._beziers[b], delete this._func[b], c = d.length; --c > -1;) d[c] === b && d.splice(c, 1);
					if (d = this._autoRotate)
						for (c = d.length; --c > -1;) a[d[c][2]] && d.splice(c, 1);
					return this._super._kill.call(this, a)
				}
			}(), _gsScope._gsDefine("plugins.CSSPlugin", ["plugins.TweenPlugin", "TweenLite"], function (a, b) {
				var c, d, e, f, g = function () {
						a.call(this, "css"), this._overwriteProps.length = 0, this.setRatio = g.prototype.setRatio
					},
					h = _gsScope._gsDefine.globals,
					i = {},
					j = g.prototype = new a("css");
				j.constructor = g, g.version = "1.20.0", g.API = 2, g.defaultTransformPerspective = 0, g.defaultSkewType = "compensated", g.defaultSmoothOrigin = !0, j = "px", g.suffixMap = {
					top: j,
					right: j,
					bottom: j,
					left: j,
					width: j,
					height: j,
					fontSize: j,
					padding: j,
					margin: j,
					perspective: j,
					lineHeight: ""
				};
				var k, l, m, n, o, p, q, r, s = /(?:\-|\.|\b)(\d|\.|e\-)+/g,
					t = /(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,
					u = /(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,
					v = /(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,
					w = /(?:\d|\-|\+|=|#|\.)*/g,
					x = /opacity *= *([^)]*)/i,
					y = /opacity:([^;]*)/i,
					z = /alpha\(opacity *=.+?\)/i,
					A = /^(rgb|hsl)/,
					B = /([A-Z])/g,
					C = /-([a-z])/gi,
					D = /(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,
					E = function (a, b) {
						return b.toUpperCase()
					},
					F = /(?:Left|Right|Width)/i,
					G = /(M11|M12|M21|M22)=[\d\-\.e]+/gi,
					H = /progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,
					I = /,(?=[^\)]*(?:\(|$))/gi,
					J = /[\s,\(]/i,
					K = Math.PI / 180,
					L = 180 / Math.PI,
					M = {},
					N = {
						style: {}
					},
					O = _gsScope.document || {
						createElement: function () {
							return N
						}
					},
					P = function (a, b) {
						return O.createElementNS ? O.createElementNS(b || "http://www.w3.org/1999/xhtml", a) : O.createElement(a)
					},
					Q = P("div"),
					R = P("img"),
					S = g._internals = {
						_specialProps: i
					},
					T = (_gsScope.navigator || {}).userAgent || "",
					U = function () {
						var a = T.indexOf("Android"),
							b = P("a");
						return m = -1 !== T.indexOf("Safari") && -1 === T.indexOf("Chrome") && (-1 === a || parseFloat(T.substr(a + 8, 2)) > 3), o = m && parseFloat(T.substr(T.indexOf("Version/") + 8, 2)) < 6, n = -1 !== T.indexOf("Firefox"), (/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(T) || /Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(T)) && (p = parseFloat(RegExp.$1)), b ? (b.style.cssText = "top:1px;opacity:.55;", /^0.55/.test(b.style.opacity)) : !1
					}(),
					V = function (a) {
						return x.test("string" == typeof a ? a : (a.currentStyle ? a.currentStyle.filter : a.style.filter) || "") ? parseFloat(RegExp.$1) / 100 : 1
					},
					W = function (a) {
						_gsScope.console && console.log(a)
					},
					X = "",
					Y = "",
					Z = function (a, b) {
						b = b || Q;
						var c, d, e = b.style;
						if (void 0 !== e[a]) return a;
						for (a = a.charAt(0).toUpperCase() + a.substr(1), c = ["O", "Moz", "ms", "Ms", "Webkit"], d = 5; --d > -1 && void 0 === e[c[d] + a];);
						return d >= 0 ? (Y = 3 === d ? "ms" : c[d], X = "-" + Y.toLowerCase() + "-", Y + a) : null
					},
					$ = O.defaultView ? O.defaultView.getComputedStyle : function () {},
					_ = g.getStyle = function (a, b, c, d, e) {
						var f;
						return U || "opacity" !== b ? (!d && a.style[b] ? f = a.style[b] : (c = c || $(a)) ? f = c[b] || c.getPropertyValue(b) || c.getPropertyValue(b.replace(B, "-$1").toLowerCase()) : a.currentStyle && (f = a.currentStyle[b]), null == e || f && "none" !== f && "auto" !== f && "auto auto" !== f ? f : e) : V(a)
					},
					aa = S.convertToPixels = function (a, c, d, e, f) {
						if ("px" === e || !e && "lineHeight" !== c) return d;
						if ("auto" === e || !d) return 0;
						var h, i, j, k = F.test(c),
							l = a,
							m = Q.style,
							n = 0 > d,
							o = 1 === d;
						if (n && (d = -d), o && (d *= 100), "lineHeight" !== c || e)
							if ("%" === e && -1 !== c.indexOf("border")) h = d / 100 * (k ? a.clientWidth : a.clientHeight);
							else {
								if (m.cssText = "border:0 solid red;position:" + _(a, "position") + ";line-height:0;", "%" !== e && l.appendChild && "v" !== e.charAt(0) && "rem" !== e) m[k ? "borderLeftWidth" : "borderTopWidth"] = d + e;
								else {
									if (l = a.parentNode || O.body, -1 !== _(l, "display").indexOf("flex") && (m.position = "absolute"), i = l._gsCache, j = b.ticker.frame, i && k && i.time === j) return i.width * d / 100;
									m[k ? "width" : "height"] = d + e
								}
								l.appendChild(Q), h = parseFloat(Q[k ? "offsetWidth" : "offsetHeight"]), l.removeChild(Q), k && "%" === e && g.cacheWidths !== !1 && (i = l._gsCache = l._gsCache || {}, i.time = j, i.width = h / d * 100), 0 !== h || f || (h = aa(a, c, d, e, !0))
							}
						else i = $(a).lineHeight, a.style.lineHeight = d, h = parseFloat($(a).lineHeight), a.style.lineHeight = i;
						return o && (h /= 100), n ? -h : h
					},
					ba = S.calculateOffset = function (a, b, c) {
						if ("absolute" !== _(a, "position", c)) return 0;
						var d = "left" === b ? "Left" : "Top",
							e = _(a, "margin" + d, c);
						return a["offset" + d] - (aa(a, b, parseFloat(e), e.replace(w, "")) || 0)
					},
					ca = function (a, b) {
						var c, d, e, f = {};
						if (b = b || $(a, null))
							if (c = b.length)
								for (; --c > -1;) e = b[c], (-1 === e.indexOf("-transform") || Da === e) && (f[e.replace(C, E)] = b.getPropertyValue(e));
							else
								for (c in b)(-1 === c.indexOf("Transform") || Ca === c) && (f[c] = b[c]);
						else if (b = a.currentStyle || a.style)
							for (c in b) "string" == typeof c && void 0 === f[c] && (f[c.replace(C, E)] = b[c]);
						return U || (f.opacity = V(a)), d = Ra(a, b, !1), f.rotation = d.rotation, f.skewX = d.skewX, f.scaleX = d.scaleX, f.scaleY = d.scaleY, f.x = d.x, f.y = d.y, Fa && (f.z = d.z, f.rotationX = d.rotationX, f.rotationY = d.rotationY, f.scaleZ = d.scaleZ), f.filters && delete f.filters, f
					},
					da = function (a, b, c, d, e) {
						var f, g, h, i = {},
							j = a.style;
						for (g in c) "cssText" !== g && "length" !== g && isNaN(g) && (b[g] !== (f = c[g]) || e && e[g]) && -1 === g.indexOf("Origin") && ("number" == typeof f || "string" == typeof f) && (i[g] = "auto" !== f || "left" !== g && "top" !== g ? "" !== f && "auto" !== f && "none" !== f || "string" != typeof b[g] || "" === b[g].replace(v, "") ? f : 0 : ba(a, g), void 0 !== j[g] && (h = new sa(j, g, j[g], h)));
						if (d)
							for (g in d) "className" !== g && (i[g] = d[g]);
						return {
							difs: i,
							firstMPT: h
						}
					},
					ea = {
						width: ["Left", "Right"],
						height: ["Top", "Bottom"]
					},
					fa = ["marginLeft", "marginRight", "marginTop", "marginBottom"],
					ga = function (a, b, c) {
						if ("svg" === (a.nodeName + "").toLowerCase()) return (c || $(a))[b] || 0;
						if (a.getCTM && Oa(a)) return a.getBBox()[b] || 0;
						var d = parseFloat("width" === b ? a.offsetWidth : a.offsetHeight),
							e = ea[b],
							f = e.length;
						for (c = c || $(a, null); --f > -1;) d -= parseFloat(_(a, "padding" + e[f], c, !0)) || 0, d -= parseFloat(_(a, "border" + e[f] + "Width", c, !0)) || 0;
						return d
					},
					ha = function (a, b) {
						if ("contain" === a || "auto" === a || "auto auto" === a) return a + " ";
						(null == a || "" === a) && (a = "0 0");
						var c, d = a.split(" "),
							e = -1 !== a.indexOf("left") ? "0%" : -1 !== a.indexOf("right") ? "100%" : d[0],
							f = -1 !== a.indexOf("top") ? "0%" : -1 !== a.indexOf("bottom") ? "100%" : d[1];
						if (d.length > 3 && !b) {
							for (d = a.split(", ").join(",").split(","), a = [], c = 0; c < d.length; c++) a.push(ha(d[c]));
							return a.join(",")
						}
						return null == f ? f = "center" === e ? "50%" : "0" : "center" === f && (f = "50%"), ("center" === e || isNaN(parseFloat(e)) && -1 === (e + "").indexOf("=")) && (e = "50%"), a = e + " " + f + (d.length > 2 ? " " + d[2] : ""), b && (b.oxp = -1 !== e.indexOf("%"), b.oyp = -1 !== f.indexOf("%"), b.oxr = "=" === e.charAt(1), b.oyr = "=" === f.charAt(1), b.ox = parseFloat(e.replace(v, "")), b.oy = parseFloat(f.replace(v, "")), b.v = a), b || a
					},
					ia = function (a, b) {
						return "function" == typeof a && (a = a(r, q)), "string" == typeof a && "=" === a.charAt(1) ? parseInt(a.charAt(0) + "1", 10) * parseFloat(a.substr(2)) : parseFloat(a) - parseFloat(b) || 0
					},
					ja = function (a, b) {
						return "function" == typeof a && (a = a(r, q)), null == a ? b : "string" == typeof a && "=" === a.charAt(1) ? parseInt(a.charAt(0) + "1", 10) * parseFloat(a.substr(2)) + b : parseFloat(a) || 0
					},
					ka = function (a, b, c, d) {
						var e, f, g, h, i, j = 1e-6;
						return "function" == typeof a && (a = a(r, q)), null == a ? h = b : "number" == typeof a ? h = a : (e = 360, f = a.split("_"), i = "=" === a.charAt(1), g = (i ? parseInt(a.charAt(0) + "1", 10) * parseFloat(f[0].substr(2)) : parseFloat(f[0])) * (-1 === a.indexOf("rad") ? 1 : L) - (i ? 0 : b), f.length && (d && (d[c] = b + g), -1 !== a.indexOf("short") && (g %= e, g !== g % (e / 2) && (g = 0 > g ? g + e : g - e)), -1 !== a.indexOf("_cw") && 0 > g ? g = (g + 9999999999 * e) % e - (g / e | 0) * e : -1 !== a.indexOf("ccw") && g > 0 && (g = (g - 9999999999 * e) % e - (g / e | 0) * e)), h = b + g), j > h && h > -j && (h = 0), h
					},
					la = {
						aqua: [0, 255, 255],
						lime: [0, 255, 0],
						silver: [192, 192, 192],
						black: [0, 0, 0],
						maroon: [128, 0, 0],
						teal: [0, 128, 128],
						blue: [0, 0, 255],
						navy: [0, 0, 128],
						white: [255, 255, 255],
						fuchsia: [255, 0, 255],
						olive: [128, 128, 0],
						yellow: [255, 255, 0],
						orange: [255, 165, 0],
						gray: [128, 128, 128],
						purple: [128, 0, 128],
						green: [0, 128, 0],
						red: [255, 0, 0],
						pink: [255, 192, 203],
						cyan: [0, 255, 255],
						transparent: [255, 255, 255, 0]
					},
					ma = function (a, b, c) {
						return a = 0 > a ? a + 1 : a > 1 ? a - 1 : a, 255 * (1 > 6 * a ? b + (c - b) * a * 6 : .5 > a ? c : 2 > 3 * a ? b + (c - b) * (2 / 3 - a) * 6 : b) + .5 | 0
					},
					na = g.parseColor = function (a, b) {
						var c, d, e, f, g, h, i, j, k, l, m;
						if (a)
							if ("number" == typeof a) c = [a >> 16, a >> 8 & 255, 255 & a];
							else {
								if ("," === a.charAt(a.length - 1) && (a = a.substr(0, a.length - 1)), la[a]) c = la[a];
								else if ("#" === a.charAt(0)) 4 === a.length && (d = a.charAt(1), e = a.charAt(2), f = a.charAt(3), a = "#" + d + d + e + e + f + f), a = parseInt(a.substr(1), 16), c = [a >> 16, a >> 8 & 255, 255 & a];
								else if ("hsl" === a.substr(0, 3))
									if (c = m = a.match(s), b) {
										if (-1 !== a.indexOf("=")) return a.match(t)
									} else g = Number(c[0]) % 360 / 360, h = Number(c[1]) / 100, i = Number(c[2]) / 100, e = .5 >= i ? i * (h + 1) : i + h - i * h, d = 2 * i - e, c.length > 3 && (c[3] = Number(a[3])), c[0] = ma(g + 1 / 3, d, e), c[1] = ma(g, d, e), c[2] = ma(g - 1 / 3, d, e);
								else c = a.match(s) || la.transparent;
								c[0] = Number(c[0]), c[1] = Number(c[1]), c[2] = Number(c[2]), c.length > 3 && (c[3] = Number(c[3]))
							}
						else c = la.black;
						return b && !m && (d = c[0] / 255, e = c[1] / 255, f = c[2] / 255, j = Math.max(d, e, f), k = Math.min(d, e, f), i = (j + k) / 2, j === k ? g = h = 0 : (l = j - k, h = i > .5 ? l / (2 - j - k) : l / (j + k), g = j === d ? (e - f) / l + (f > e ? 6 : 0) : j === e ? (f - d) / l + 2 : (d - e) / l + 4, g *= 60), c[0] = g + .5 | 0, c[1] = 100 * h + .5 | 0, c[2] = 100 * i + .5 | 0), c
					},
					oa = function (a, b) {
						var c, d, e, f = a.match(pa) || [],
							g = 0,
							h = "";
						if (!f.length) return a;
						for (c = 0; c < f.length; c++) d = f[c], e = a.substr(g, a.indexOf(d, g) - g), g += e.length + d.length, d = na(d, b), 3 === d.length && d.push(1), h += e + (b ? "hsla(" + d[0] + "," + d[1] + "%," + d[2] + "%," + d[3] : "rgba(" + d.join(",")) + ")";
						return h + a.substr(g)
					},
					pa = "(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3}){1,2}\\b";
				for (j in la) pa += "|" + j + "\\b";
				pa = new RegExp(pa + ")", "gi"), g.colorStringFilter = function (a) {
					var b, c = a[0] + " " + a[1];
					pa.test(c) && (b = -1 !== c.indexOf("hsl(") || -1 !== c.indexOf("hsla("), a[0] = oa(a[0], b), a[1] = oa(a[1], b)), pa.lastIndex = 0
				}, b.defaultStringFilter || (b.defaultStringFilter = g.colorStringFilter);
				var qa = function (a, b, c, d) {
						if (null == a) return function (a) {
							return a
						};
						var e, f = b ? (a.match(pa) || [""])[0] : "",
							g = a.split(f).join("").match(u) || [],
							h = a.substr(0, a.indexOf(g[0])),
							i = ")" === a.charAt(a.length - 1) ? ")" : "",
							j = -1 !== a.indexOf(" ") ? " " : ",",
							k = g.length,
							l = k > 0 ? g[0].replace(s, "") : "";
						return k ? e = b ? function (a) {
							var b, m, n, o;
							if ("number" == typeof a) a += l;
							else if (d && I.test(a)) {
								for (o = a.replace(I, "|").split("|"), n = 0; n < o.length; n++) o[n] = e(o[n]);
								return o.join(",")
							}
							if (b = (a.match(pa) || [f])[0], m = a.split(b).join("").match(u) || [], n = m.length, k > n--)
								for (; ++n < k;) m[n] = c ? m[(n - 1) / 2 | 0] : g[n];
							return h + m.join(j) + j + b + i + (-1 !== a.indexOf("inset") ? " inset" : "")
						} : function (a) {
							var b, f, m;
							if ("number" == typeof a) a += l;
							else if (d && I.test(a)) {
								for (f = a.replace(I, "|").split("|"), m = 0; m < f.length; m++) f[m] = e(f[m]);
								return f.join(",")
							}
							if (b = a.match(u) || [], m = b.length, k > m--)
								for (; ++m < k;) b[m] = c ? b[(m - 1) / 2 | 0] : g[m];
							return h + b.join(j) + i
						} : function (a) {
							return a
						}
					},
					ra = function (a) {
						return a = a.split(","),
							function (b, c, d, e, f, g, h) {
								var i, j = (c + "").split(" ");
								for (h = {}, i = 0; 4 > i; i++) h[a[i]] = j[i] = j[i] || j[(i - 1) / 2 >> 0];
								return e.parse(b, h, f, g)
							}
					},
					sa = (S._setPluginRatio = function (a) {
						this.plugin.setRatio(a);
						for (var b, c, d, e, f, g = this.data, h = g.proxy, i = g.firstMPT, j = 1e-6; i;) b = h[i.v], i.r ? b = Math.round(b) : j > b && b > -j && (b = 0), i.t[i.p] = b, i = i._next;
						if (g.autoRotate && (g.autoRotate.rotation = g.mod ? g.mod(h.rotation, this.t) : h.rotation), 1 === a || 0 === a)
							for (i = g.firstMPT, f = 1 === a ? "e" : "b"; i;) {
								if (c = i.t, c.type) {
									if (1 === c.type) {
										for (e = c.xs0 + c.s + c.xs1, d = 1; d < c.l; d++) e += c["xn" + d] + c["xs" + (d + 1)];
										c[f] = e
									}
								} else c[f] = c.s + c.xs0;
								i = i._next
							}
					}, function (a, b, c, d, e) {
						this.t = a, this.p = b, this.v = c, this.r = e, d && (d._prev = this, this._next = d)
					}),
					ta = (S._parseToProxy = function (a, b, c, d, e, f) {
						var g, h, i, j, k, l = d,
							m = {},
							n = {},
							o = c._transform,
							p = M;
						for (c._transform = null, M = b, d = k = c.parse(a, b, d, e), M = p, f && (c._transform = o, l && (l._prev = null, l._prev && (l._prev._next = null))); d && d !== l;) {
							if (d.type <= 1 && (h = d.p, n[h] = d.s + d.c, m[h] = d.s, f || (j = new sa(d, "s", h, j, d.r), d.c = 0), 1 === d.type))
								for (g = d.l; --g > 0;) i = "xn" + g, h = d.p + "_" + i, n[h] = d.data[i], m[h] = d[i], f || (j = new sa(d, i, h, j, d.rxp[i]));
							d = d._next
						}
						return {
							proxy: m,
							end: n,
							firstMPT: j,
							pt: k
						}
					}, S.CSSPropTween = function (a, b, d, e, g, h, i, j, k, l, m) {
						this.t = a, this.p = b, this.s = d, this.c = e, this.n = i || b, a instanceof ta || f.push(this.n), this.r = j, this.type = h || 0, k && (this.pr = k, c = !0), this.b = void 0 === l ? d : l, this.e = void 0 === m ? d + e : m, g && (this._next = g, g._prev = this)
					}),
					ua = function (a, b, c, d, e, f) {
						var g = new ta(a, b, c, d - c, e, -1, f);
						return g.b = c, g.e = g.xs0 = d, g
					},
					va = g.parseComplex = function (a, b, c, d, e, f, h, i, j, l) {
						c = c || f || "", "function" == typeof d && (d = d(r, q)), h = new ta(a, b, 0, 0, h, l ? 2 : 1, null, !1, i, c, d), d += "", e && pa.test(d + c) && (d = [c, d], g.colorStringFilter(d), c = d[0], d = d[1]);
						var m, n, o, p, u, v, w, x, y, z, A, B, C, D = c.split(", ").join(",").split(" "),
							E = d.split(", ").join(",").split(" "),
							F = D.length,
							G = k !== !1;
						for ((-1 !== d.indexOf(",") || -1 !== c.indexOf(",")) && (D = D.join(" ").replace(I, ", ").split(" "), E = E.join(" ").replace(I, ", ").split(" "), F = D.length), F !== E.length && (D = (f || "").split(" "), F = D.length), h.plugin = j, h.setRatio = l, pa.lastIndex = 0, m = 0; F > m; m++)
							if (p = D[m], u = E[m], x = parseFloat(p), x || 0 === x) h.appendXtra("", x, ia(u, x), u.replace(t, ""), G && -1 !== u.indexOf("px"), !0);
							else if (e && pa.test(p)) B = u.indexOf(")") + 1, B = ")" + (B ? u.substr(B) : ""), C = -1 !== u.indexOf("hsl") && U, z = u, p = na(p, C), u = na(u, C), y = p.length + u.length > 6, y && !U && 0 === u[3] ? (h["xs" + h.l] += h.l ? " transparent" : "transparent", h.e = h.e.split(E[m]).join("transparent")) : (U || (y = !1), C ? h.appendXtra(z.substr(0, z.indexOf("hsl")) + (y ? "hsla(" : "hsl("), p[0], ia(u[0], p[0]), ",", !1, !0).appendXtra("", p[1], ia(u[1], p[1]), "%,", !1).appendXtra("", p[2], ia(u[2], p[2]), y ? "%," : "%" + B, !1) : h.appendXtra(z.substr(0, z.indexOf("rgb")) + (y ? "rgba(" : "rgb("), p[0], u[0] - p[0], ",", !0, !0).appendXtra("", p[1], u[1] - p[1], ",", !0).appendXtra("", p[2], u[2] - p[2], y ? "," : B, !0), y && (p = p.length < 4 ? 1 : p[3], h.appendXtra("", p, (u.length < 4 ? 1 : u[3]) - p, B, !1))), pa.lastIndex = 0;
						else if (v = p.match(s)) {
							if (w = u.match(t), !w || w.length !== v.length) return h;
							for (o = 0, n = 0; n < v.length; n++) A = v[n], z = p.indexOf(A, o), h.appendXtra(p.substr(o, z - o), Number(A), ia(w[n], A), "", G && "px" === p.substr(z + A.length, 2), 0 === n), o = z + A.length;
							h["xs" + h.l] += p.substr(o)
						} else h["xs" + h.l] += h.l || h["xs" + h.l] ? " " + u : u;
						if (-1 !== d.indexOf("=") && h.data) {
							for (B = h.xs0 + h.data.s, m = 1; m < h.l; m++) B += h["xs" + m] + h.data["xn" + m];
							h.e = B + h["xs" + m]
						}
						return h.l || (h.type = -1, h.xs0 = h.e), h.xfirst || h
					},
					wa = 9;
				for (j = ta.prototype, j.l = j.pr = 0; --wa > 0;) j["xn" + wa] = 0, j["xs" + wa] = "";
				j.xs0 = "", j._next = j._prev = j.xfirst = j.data = j.plugin = j.setRatio = j.rxp = null, j.appendXtra = function (a, b, c, d, e, f) {
					var g = this,
						h = g.l;
					return g["xs" + h] += f && (h || g["xs" + h]) ? " " + a : a || "", c || 0 === h || g.plugin ? (g.l++, g.type = g.setRatio ? 2 : 1, g["xs" + g.l] = d || "", h > 0 ? (g.data["xn" + h] = b + c, g.rxp["xn" + h] = e, g["xn" + h] = b, g.plugin || (g.xfirst = new ta(g, "xn" + h, b, c, g.xfirst || g, 0, g.n, e, g.pr), g.xfirst.xs0 = 0), g) : (g.data = {
						s: b + c
					}, g.rxp = {}, g.s = b, g.c = c, g.r = e, g)) : (g["xs" + h] += b + (d || ""), g)
				};
				var xa = function (a, b) {
						b = b || {}, this.p = b.prefix ? Z(a) || a : a, i[a] = i[this.p] = this, this.format = b.formatter || qa(b.defaultValue, b.color, b.collapsible, b.multi), b.parser && (this.parse = b.parser), this.clrs = b.color, this.multi = b.multi, this.keyword = b.keyword, this.dflt = b.defaultValue, this.pr = b.priority || 0
					},
					ya = S._registerComplexSpecialProp = function (a, b, c) {
						"object" != typeof b && (b = {
							parser: c
						});
						var d, e, f = a.split(","),
							g = b.defaultValue;
						for (c = c || [g], d = 0; d < f.length; d++) b.prefix = 0 === d && b.prefix, b.defaultValue = c[d] || g, e = new xa(f[d], b)
					},
					za = S._registerPluginProp = function (a) {
						if (!i[a]) {
							var b = a.charAt(0).toUpperCase() + a.substr(1) + "Plugin";
							ya(a, {
								parser: function (a, c, d, e, f, g, j) {
									var k = h.com.greensock.plugins[b];
									return k ? (k._cssRegister(), i[d].parse(a, c, d, e, f, g, j)) : (W("Error: " + b + " js file not loaded."), f)
								}
							})
						}
					};
				j = xa.prototype, j.parseComplex = function (a, b, c, d, e, f) {
					var g, h, i, j, k, l, m = this.keyword;
					if (this.multi && (I.test(c) || I.test(b) ? (h = b.replace(I, "|").split("|"), i = c.replace(I, "|").split("|")) : m && (h = [b], i = [c])), i) {
						for (j = i.length > h.length ? i.length : h.length, g = 0; j > g; g++) b = h[g] = h[g] || this.dflt, c = i[g] = i[g] || this.dflt, m && (k = b.indexOf(m), l = c.indexOf(m), k !== l && (-1 === l ? h[g] = h[g].split(m).join("") : -1 === k && (h[g] += " " + m)));
						b = h.join(", "), c = i.join(", ")
					}
					return va(a, this.p, b, c, this.clrs, this.dflt, d, this.pr, e, f)
				}, j.parse = function (a, b, c, d, f, g, h) {
					return this.parseComplex(a.style, this.format(_(a, this.p, e, !1, this.dflt)), this.format(b), f, g)
				}, g.registerSpecialProp = function (a, b, c) {
					ya(a, {
						parser: function (a, d, e, f, g, h, i) {
							var j = new ta(a, e, 0, 0, g, 2, e, !1, c);
							return j.plugin = h, j.setRatio = b(a, d, f._tween, e), j
						},
						priority: c
					})
				}, g.useSVGTransformAttr = !0;
				var Aa, Ba = "scaleX,scaleY,scaleZ,x,y,z,skewX,skewY,rotation,rotationX,rotationY,perspective,xPercent,yPercent".split(","),
					Ca = Z("transform"),
					Da = X + "transform",
					Ea = Z("transformOrigin"),
					Fa = null !== Z("perspective"),
					Ga = S.Transform = function () {
						this.perspective = parseFloat(g.defaultTransformPerspective) || 0, this.force3D = g.defaultForce3D !== !1 && Fa ? g.defaultForce3D || "auto" : !1
					},
					Ha = _gsScope.SVGElement,
					Ia = function (a, b, c) {
						var d, e = O.createElementNS("http://www.w3.org/2000/svg", a),
							f = /([a-z])([A-Z])/g;
						for (d in c) e.setAttributeNS(null, d.replace(f, "$1-$2").toLowerCase(), c[d]);
						return b.appendChild(e), e
					},
					Ja = O.documentElement || {},
					Ka = function () {
						var a, b, c, d = p || /Android/i.test(T) && !_gsScope.chrome;
						return O.createElementNS && !d && (a = Ia("svg", Ja), b = Ia("rect", a, {
							width: 100,
							height: 50,
							x: 100
						}), c = b.getBoundingClientRect().width, b.style[Ea] = "50% 50%", b.style[Ca] = "scaleX(0.5)", d = c === b.getBoundingClientRect().width && !(n && Fa), Ja.removeChild(a)), d
					}(),
					La = function (a, b, c, d, e, f) {
						var h, i, j, k, l, m, n, o, p, q, r, s, t, u, v = a._gsTransform,
							w = Qa(a, !0);
						v && (t = v.xOrigin, u = v.yOrigin), (!d || (h = d.split(" ")).length < 2) && (n = a.getBBox(), 0 === n.x && 0 === n.y && n.width + n.height === 0 && (n = {
							x: parseFloat(a.hasAttribute("x") ? a.getAttribute("x") : a.hasAttribute("cx") ? a.getAttribute("cx") : 0) || 0,
							y: parseFloat(a.hasAttribute("y") ? a.getAttribute("y") : a.hasAttribute("cy") ? a.getAttribute("cy") : 0) || 0,
							width: 0,
							height: 0
						}), b = ha(b).split(" "), h = [(-1 !== b[0].indexOf("%") ? parseFloat(b[0]) / 100 * n.width : parseFloat(b[0])) + n.x, (-1 !== b[1].indexOf("%") ? parseFloat(b[1]) / 100 * n.height : parseFloat(b[1])) + n.y]), c.xOrigin = k = parseFloat(h[0]), c.yOrigin = l = parseFloat(h[1]), d && w !== Pa && (m = w[0], n = w[1], o = w[2], p = w[3], q = w[4], r = w[5], s = m * p - n * o, s && (i = k * (p / s) + l * (-o / s) + (o * r - p * q) / s, j = k * (-n / s) + l * (m / s) - (m * r - n * q) / s, k = c.xOrigin = h[0] = i, l = c.yOrigin = h[1] = j)), v && (f && (c.xOffset = v.xOffset, c.yOffset = v.yOffset, v = c), e || e !== !1 && g.defaultSmoothOrigin !== !1 ? (i = k - t, j = l - u, v.xOffset += i * w[0] + j * w[2] - i, v.yOffset += i * w[1] + j * w[3] - j) : v.xOffset = v.yOffset = 0), f || a.setAttribute("data-svg-origin", h.join(" "))
					},
					Ma = function (a) {
						var b, c = P("svg", this.ownerSVGElement.getAttribute("xmlns") || "http://www.w3.org/2000/svg"),
							d = this.parentNode,
							e = this.nextSibling,
							f = this.style.cssText;
						if (Ja.appendChild(c), c.appendChild(this), this.style.display = "block", a) try {
							b = this.getBBox(), this._originalGetBBox = this.getBBox, this.getBBox = Ma
						} catch (g) {} else this._originalGetBBox && (b = this._originalGetBBox());
						return e ? d.insertBefore(this, e) : d.appendChild(this), Ja.removeChild(c), this.style.cssText = f, b
					},
					Na = function (a) {
						try {
							return a.getBBox()
						} catch (b) {
							return Ma.call(a, !0)
						}
					},
					Oa = function (a) {
						return !(!(Ha && a.getCTM && Na(a)) || a.parentNode && !a.ownerSVGElement)
					},
					Pa = [1, 0, 0, 1, 0, 0],
					Qa = function (a, b) {
						var c, d, e, f, g, h, i = a._gsTransform || new Ga,
							j = 1e5,
							k = a.style;
						if (Ca ? d = _(a, Da, null, !0) : a.currentStyle && (d = a.currentStyle.filter.match(G), d = d && 4 === d.length ? [d[0].substr(4), Number(d[2].substr(4)), Number(d[1].substr(4)), d[3].substr(4), i.x || 0, i.y || 0].join(",") : ""), c = !d || "none" === d || "matrix(1, 0, 0, 1, 0, 0)" === d, !Ca || !(h = "none" === $(a).display) && a.parentNode || (h && (f = k.display, k.display = "block"), a.parentNode || (g = 1, Ja.appendChild(a)), d = _(a, Da, null, !0), c = !d || "none" === d || "matrix(1, 0, 0, 1, 0, 0)" === d, f ? k.display = f : h && Va(k, "display"), g && Ja.removeChild(a)), (i.svg || a.getCTM && Oa(a)) && (c && -1 !== (k[Ca] + "").indexOf("matrix") && (d = k[Ca], c = 0), e = a.getAttribute("transform"), c && e && (-1 !== e.indexOf("matrix") ? (d = e, c = 0) : -1 !== e.indexOf("translate") && (d = "matrix(1,0,0,1," + e.match(/(?:\-|\b)[\d\-\.e]+\b/gi).join(",") + ")", c = 0))), c) return Pa;
						for (e = (d || "").match(s) || [], wa = e.length; --wa > -1;) f = Number(e[wa]), e[wa] = (g = f - (f |= 0)) ? (g * j + (0 > g ? -.5 : .5) | 0) / j + f : f;
						return b && e.length > 6 ? [e[0], e[1], e[4], e[5], e[12], e[13]] : e
					},
					Ra = S.getTransform = function (a, c, d, e) {
						if (a._gsTransform && d && !e) return a._gsTransform;
						var f, h, i, j, k, l, m = d ? a._gsTransform || new Ga : new Ga,
							n = m.scaleX < 0,
							o = 2e-5,
							p = 1e5,
							q = Fa ? parseFloat(_(a, Ea, c, !1, "0 0 0").split(" ")[2]) || m.zOrigin || 0 : 0,
							r = parseFloat(g.defaultTransformPerspective) || 0;
						if (m.svg = !(!a.getCTM || !Oa(a)), m.svg && (La(a, _(a, Ea, c, !1, "50% 50%") + "", m, a.getAttribute("data-svg-origin")), Aa = g.useSVGTransformAttr || Ka), f = Qa(a), f !== Pa) {
							if (16 === f.length) {
								var s, t, u, v, w, x = f[0],
									y = f[1],
									z = f[2],
									A = f[3],
									B = f[4],
									C = f[5],
									D = f[6],
									E = f[7],
									F = f[8],
									G = f[9],
									H = f[10],
									I = f[12],
									J = f[13],
									K = f[14],
									M = f[11],
									N = Math.atan2(D, H);
								m.zOrigin && (K = -m.zOrigin, I = F * K - f[12], J = G * K - f[13], K = H * K + m.zOrigin - f[14]), m.rotationX = N * L, N && (v = Math.cos(-N), w = Math.sin(-N), s = B * v + F * w, t = C * v + G * w, u = D * v + H * w, F = B * -w + F * v, G = C * -w + G * v, H = D * -w + H * v, M = E * -w + M * v, B = s, C = t, D = u), N = Math.atan2(-z, H), m.rotationY = N * L, N && (v = Math.cos(-N), w = Math.sin(-N), s = x * v - F * w, t = y * v - G * w, u = z * v - H * w, G = y * w + G * v, H = z * w + H * v, M = A * w + M * v, x = s, y = t, z = u), N = Math.atan2(y, x), m.rotation = N * L, N && (v = Math.cos(N), w = Math.sin(N), s = x * v + y * w, t = B * v + C * w, u = F * v + G * w, y = y * v - x * w, C = C * v - B * w, G = G * v - F * w, x = s, B = t, F = u), m.rotationX && Math.abs(m.rotationX) + Math.abs(m.rotation) > 359.9 && (m.rotationX = m.rotation = 0, m.rotationY = 180 - m.rotationY), N = Math.atan2(B, C), m.scaleX = (Math.sqrt(x * x + y * y + z * z) * p + .5 | 0) / p, m.scaleY = (Math.sqrt(C * C + D * D) * p + .5 | 0) / p, m.scaleZ = (Math.sqrt(F * F + G * G + H * H) * p + .5 | 0) / p, x /= m.scaleX, B /= m.scaleY, y /= m.scaleX, C /= m.scaleY, Math.abs(N) > o ? (m.skewX = N * L, B = 0, "simple" !== m.skewType && (m.scaleY *= 1 / Math.cos(N))) : m.skewX = 0, m.perspective = M ? 1 / (0 > M ? -M : M) : 0, m.x = I, m.y = J, m.z = K, m.svg && (m.x -= m.xOrigin - (m.xOrigin * x - m.yOrigin * B), m.y -= m.yOrigin - (m.yOrigin * y - m.xOrigin * C))
							} else if (!Fa || e || !f.length || m.x !== f[4] || m.y !== f[5] || !m.rotationX && !m.rotationY) {
								var O = f.length >= 6,
									P = O ? f[0] : 1,
									Q = f[1] || 0,
									R = f[2] || 0,
									S = O ? f[3] : 1;
								m.x = f[4] || 0, m.y = f[5] || 0, i = Math.sqrt(P * P + Q * Q), j = Math.sqrt(S * S + R * R), k = P || Q ? Math.atan2(Q, P) * L : m.rotation || 0, l = R || S ? Math.atan2(R, S) * L + k : m.skewX || 0, m.scaleX = i, m.scaleY = j, m.rotation = k, m.skewX = l, Fa && (m.rotationX = m.rotationY = m.z = 0, m.perspective = r, m.scaleZ = 1), m.svg && (m.x -= m.xOrigin - (m.xOrigin * P + m.yOrigin * R), m.y -= m.yOrigin - (m.xOrigin * Q + m.yOrigin * S))
							}
							Math.abs(m.skewX) > 90 && Math.abs(m.skewX) < 270 && (n ? (m.scaleX *= -1, m.skewX += m.rotation <= 0 ? 180 : -180, m.rotation += m.rotation <= 0 ? 180 : -180) : (m.scaleY *= -1, m.skewX += m.skewX <= 0 ? 180 : -180)), m.zOrigin = q;
							for (h in m) m[h] < o && m[h] > -o && (m[h] = 0)
						}
						return d && (a._gsTransform = m, m.svg && (Aa && a.style[Ca] ? b.delayedCall(.001, function () {
							Va(a.style, Ca)
						}) : !Aa && a.getAttribute("transform") && b.delayedCall(.001, function () {
							a.removeAttribute("transform")
						}))), m
					},
					Sa = function (a) {
						var b, c, d = this.data,
							e = -d.rotation * K,
							f = e + d.skewX * K,
							g = 1e5,
							h = (Math.cos(e) * d.scaleX * g | 0) / g,
							i = (Math.sin(e) * d.scaleX * g | 0) / g,
							j = (Math.sin(f) * -d.scaleY * g | 0) / g,
							k = (Math.cos(f) * d.scaleY * g | 0) / g,
							l = this.t.style,
							m = this.t.currentStyle;
						if (m) {
							c = i, i = -j, j = -c, b = m.filter, l.filter = "";
							var n, o, q = this.t.offsetWidth,
								r = this.t.offsetHeight,
								s = "absolute" !== m.position,
								t = "progid:DXImageTransform.Microsoft.Matrix(M11=" + h + ", M12=" + i + ", M21=" + j + ", M22=" + k,
								u = d.x + q * d.xPercent / 100,
								v = d.y + r * d.yPercent / 100;
							if (null != d.ox && (n = (d.oxp ? q * d.ox * .01 : d.ox) - q / 2, o = (d.oyp ? r * d.oy * .01 : d.oy) - r / 2, u += n - (n * h + o * i), v += o - (n * j + o * k)), s ? (n = q / 2, o = r / 2, t += ", Dx=" + (n - (n * h + o * i) + u) + ", Dy=" + (o - (n * j + o * k) + v) + ")") : t += ", sizingMethod='auto expand')", -1 !== b.indexOf("DXImageTransform.Microsoft.Matrix(") ? l.filter = b.replace(H, t) : l.filter = t + " " + b, (0 === a || 1 === a) && 1 === h && 0 === i && 0 === j && 1 === k && (s && -1 === t.indexOf("Dx=0, Dy=0") || x.test(b) && 100 !== parseFloat(RegExp.$1) || -1 === b.indexOf(b.indexOf("Alpha")) && l.removeAttribute("filter")), !s) {
								var y, z, A, B = 8 > p ? 1 : -1;
								for (n = d.ieOffsetX || 0, o = d.ieOffsetY || 0, d.ieOffsetX = Math.round((q - ((0 > h ? -h : h) * q + (0 > i ? -i : i) * r)) / 2 + u), d.ieOffsetY = Math.round((r - ((0 > k ? -k : k) * r + (0 > j ? -j : j) * q)) / 2 + v), wa = 0; 4 > wa; wa++) z = fa[wa], y = m[z], c = -1 !== y.indexOf("px") ? parseFloat(y) : aa(this.t, z, parseFloat(y), y.replace(w, "")) || 0, A = c !== d[z] ? 2 > wa ? -d.ieOffsetX : -d.ieOffsetY : 2 > wa ? n - d.ieOffsetX : o - d.ieOffsetY, l[z] = (d[z] = Math.round(c - A * (0 === wa || 2 === wa ? 1 : B))) + "px"
							}
						}
					},
					Ta = S.set3DTransformRatio = S.setTransformRatio = function (a) {
						var b, c, d, e, f, g, h, i, j, k, l, m, o, p, q, r, s, t, u, v, w, x, y, z = this.data,
							A = this.t.style,
							B = z.rotation,
							C = z.rotationX,
							D = z.rotationY,
							E = z.scaleX,
							F = z.scaleY,
							G = z.scaleZ,
							H = z.x,
							I = z.y,
							J = z.z,
							L = z.svg,
							M = z.perspective,
							N = z.force3D,
							O = z.skewY,
							P = z.skewX;
						if (O && (P += O, B += O), ((1 === a || 0 === a) && "auto" === N && (this.tween._totalTime === this.tween._totalDuration || !this.tween._totalTime) || !N) && !J && !M && !D && !C && 1 === G || Aa && L || !Fa) return void(B || P || L ? (B *= K, x = P * K, y = 1e5, c = Math.cos(B) * E, f = Math.sin(B) * E, d = Math.sin(B - x) * -F, g = Math.cos(B - x) * F, x && "simple" === z.skewType && (b = Math.tan(x - O * K), b = Math.sqrt(1 + b * b), d *= b, g *= b, O && (b = Math.tan(O * K), b = Math.sqrt(1 + b * b), c *= b, f *= b)), L && (H += z.xOrigin - (z.xOrigin * c + z.yOrigin * d) + z.xOffset, I += z.yOrigin - (z.xOrigin * f + z.yOrigin * g) + z.yOffset, Aa && (z.xPercent || z.yPercent) && (q = this.t.getBBox(), H += .01 * z.xPercent * q.width, I += .01 * z.yPercent * q.height), q = 1e-6, q > H && H > -q && (H = 0), q > I && I > -q && (I = 0)), u = (c * y | 0) / y + "," + (f * y | 0) / y + "," + (d * y | 0) / y + "," + (g * y | 0) / y + "," + H + "," + I + ")", L && Aa ? this.t.setAttribute("transform", "matrix(" + u) : A[Ca] = (z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) matrix(" : "matrix(") + u) : A[Ca] = (z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) matrix(" : "matrix(") + E + ",0,0," + F + "," + H + "," + I + ")");
						if (n && (q = 1e-4, q > E && E > -q && (E = G = 2e-5), q > F && F > -q && (F = G = 2e-5), !M || z.z || z.rotationX || z.rotationY || (M = 0)), B || P) B *= K, r = c = Math.cos(B), s = f = Math.sin(B), P && (B -= P * K, r = Math.cos(B), s = Math.sin(B), "simple" === z.skewType && (b = Math.tan((P - O) * K), b = Math.sqrt(1 + b * b), r *= b, s *= b, z.skewY && (b = Math.tan(O * K), b = Math.sqrt(1 + b * b), c *= b, f *= b))), d = -s, g = r;
						else {
							if (!(D || C || 1 !== G || M || L)) return void(A[Ca] = (z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) translate3d(" : "translate3d(") + H + "px," + I + "px," + J + "px)" + (1 !== E || 1 !== F ? " scale(" + E + "," + F + ")" : ""));
							c = g = 1, d = f = 0
						}
						k = 1, e = h = i = j = l = m = 0, o = M ? -1 / M : 0, p = z.zOrigin, q = 1e-6, v = ",", w = "0", B = D * K, B && (r = Math.cos(B), s = Math.sin(B), i = -s, l = o * -s, e = c * s, h = f * s, k = r, o *= r, c *= r, f *= r), B = C * K, B && (r = Math.cos(B), s = Math.sin(B), b = d * r + e * s, t = g * r + h * s, j = k * s, m = o * s, e = d * -s + e * r, h = g * -s + h * r, k *= r, o *= r, d = b, g = t), 1 !== G && (e *= G, h *= G, k *= G, o *= G), 1 !== F && (d *= F, g *= F, j *= F, m *= F), 1 !== E && (c *= E, f *= E, i *= E, l *= E), (p || L) && (p && (H += e * -p, I += h * -p, J += k * -p + p), L && (H += z.xOrigin - (z.xOrigin * c + z.yOrigin * d) + z.xOffset, I += z.yOrigin - (z.xOrigin * f + z.yOrigin * g) + z.yOffset), q > H && H > -q && (H = w), q > I && I > -q && (I = w), q > J && J > -q && (J = 0)), u = z.xPercent || z.yPercent ? "translate(" + z.xPercent + "%," + z.yPercent + "%) matrix3d(" : "matrix3d(", u += (q > c && c > -q ? w : c) + v + (q > f && f > -q ? w : f) + v + (q > i && i > -q ? w : i), u += v + (q > l && l > -q ? w : l) + v + (q > d && d > -q ? w : d) + v + (q > g && g > -q ? w : g), C || D || 1 !== G ? (u += v + (q > j && j > -q ? w : j) + v + (q > m && m > -q ? w : m) + v + (q > e && e > -q ? w : e), u += v + (q > h && h > -q ? w : h) + v + (q > k && k > -q ? w : k) + v + (q > o && o > -q ? w : o) + v) : u += ",0,0,0,0,1,0,", u += H + v + I + v + J + v + (M ? 1 + -J / M : 1) + ")", A[Ca] = u
					};
				j = Ga.prototype, j.x = j.y = j.z = j.skewX = j.skewY = j.rotation = j.rotationX = j.rotationY = j.zOrigin = j.xPercent = j.yPercent = j.xOffset = j.yOffset = 0, j.scaleX = j.scaleY = j.scaleZ = 1, ya("transform,scale,scaleX,scaleY,scaleZ,x,y,z,rotation,rotationX,rotationY,rotationZ,skewX,skewY,shortRotation,shortRotationX,shortRotationY,shortRotationZ,transformOrigin,svgOrigin,transformPerspective,directionalRotation,parseTransform,force3D,skewType,xPercent,yPercent,smoothOrigin", {
					parser: function (a, b, c, d, f, h, i) {
						if (d._lastParsedTransform === i) return f;
						d._lastParsedTransform = i;
						var j, k = i.scale && "function" == typeof i.scale ? i.scale : 0;
						"function" == typeof i[c] && (j = i[c], i[c] = b), k && (i.scale = k(r, a));
						var l, m, n, o, p, s, t, u, v, w = a._gsTransform,
							x = a.style,
							y = 1e-6,
							z = Ba.length,
							A = i,
							B = {},
							C = "transformOrigin",
							D = Ra(a, e, !0, A.parseTransform),
							E = A.transform && ("function" == typeof A.transform ? A.transform(r, q) : A.transform);
						if (D.skewType = A.skewType || D.skewType || g.defaultSkewType, d._transform = D, E && "string" == typeof E && Ca) m = Q.style,
							m[Ca] = E, m.display = "block", m.position = "absolute", O.body.appendChild(Q), l = Ra(Q, null, !1), "simple" === D.skewType && (l.scaleY *= Math.cos(l.skewX * K)), D.svg && (s = D.xOrigin, t = D.yOrigin, l.x -= D.xOffset, l.y -= D.yOffset, (A.transformOrigin || A.svgOrigin) && (E = {}, La(a, ha(A.transformOrigin), E, A.svgOrigin, A.smoothOrigin, !0), s = E.xOrigin, t = E.yOrigin, l.x -= E.xOffset - D.xOffset, l.y -= E.yOffset - D.yOffset), (s || t) && (u = Qa(Q, !0), l.x -= s - (s * u[0] + t * u[2]), l.y -= t - (s * u[1] + t * u[3]))), O.body.removeChild(Q), l.perspective || (l.perspective = D.perspective), null != A.xPercent && (l.xPercent = ja(A.xPercent, D.xPercent)), null != A.yPercent && (l.yPercent = ja(A.yPercent, D.yPercent));
						else if ("object" == typeof A) {
							if (l = {
									scaleX: ja(null != A.scaleX ? A.scaleX : A.scale, D.scaleX),
									scaleY: ja(null != A.scaleY ? A.scaleY : A.scale, D.scaleY),
									scaleZ: ja(A.scaleZ, D.scaleZ),
									x: ja(A.x, D.x),
									y: ja(A.y, D.y),
									z: ja(A.z, D.z),
									xPercent: ja(A.xPercent, D.xPercent),
									yPercent: ja(A.yPercent, D.yPercent),
									perspective: ja(A.transformPerspective, D.perspective)
								}, p = A.directionalRotation, null != p)
								if ("object" == typeof p)
									for (m in p) A[m] = p[m];
								else A.rotation = p;
								"string" == typeof A.x && -1 !== A.x.indexOf("%") && (l.x = 0, l.xPercent = ja(A.x, D.xPercent)), "string" == typeof A.y && -1 !== A.y.indexOf("%") && (l.y = 0, l.yPercent = ja(A.y, D.yPercent)), l.rotation = ka("rotation" in A ? A.rotation : "shortRotation" in A ? A.shortRotation + "_short" : "rotationZ" in A ? A.rotationZ : D.rotation, D.rotation, "rotation", B), Fa && (l.rotationX = ka("rotationX" in A ? A.rotationX : "shortRotationX" in A ? A.shortRotationX + "_short" : D.rotationX || 0, D.rotationX, "rotationX", B), l.rotationY = ka("rotationY" in A ? A.rotationY : "shortRotationY" in A ? A.shortRotationY + "_short" : D.rotationY || 0, D.rotationY, "rotationY", B)), l.skewX = ka(A.skewX, D.skewX), l.skewY = ka(A.skewY, D.skewY)
						}
						for (Fa && null != A.force3D && (D.force3D = A.force3D, o = !0), n = D.force3D || D.z || D.rotationX || D.rotationY || l.z || l.rotationX || l.rotationY || l.perspective, n || null == A.scale || (l.scaleZ = 1); --z > -1;) v = Ba[z], E = l[v] - D[v], (E > y || -y > E || null != A[v] || null != M[v]) && (o = !0, f = new ta(D, v, D[v], E, f), v in B && (f.e = B[v]), f.xs0 = 0, f.plugin = h, d._overwriteProps.push(f.n));
						return E = A.transformOrigin, D.svg && (E || A.svgOrigin) && (s = D.xOffset, t = D.yOffset, La(a, ha(E), l, A.svgOrigin, A.smoothOrigin), f = ua(D, "xOrigin", (w ? D : l).xOrigin, l.xOrigin, f, C), f = ua(D, "yOrigin", (w ? D : l).yOrigin, l.yOrigin, f, C), (s !== D.xOffset || t !== D.yOffset) && (f = ua(D, "xOffset", w ? s : D.xOffset, D.xOffset, f, C), f = ua(D, "yOffset", w ? t : D.yOffset, D.yOffset, f, C)), E = "0px 0px"), (E || Fa && n && D.zOrigin) && (Ca ? (o = !0, v = Ea, E = (E || _(a, v, e, !1, "50% 50%")) + "", f = new ta(x, v, 0, 0, f, -1, C), f.b = x[v], f.plugin = h, Fa ? (m = D.zOrigin, E = E.split(" "), D.zOrigin = (E.length > 2 && (0 === m || "0px" !== E[2]) ? parseFloat(E[2]) : m) || 0, f.xs0 = f.e = E[0] + " " + (E[1] || "50%") + " 0px", f = new ta(D, "zOrigin", 0, 0, f, -1, f.n), f.b = m, f.xs0 = f.e = D.zOrigin) : f.xs0 = f.e = E) : ha(E + "", D)), o && (d._transformType = D.svg && Aa || !n && 3 !== this._transformType ? 2 : 3), j && (i[c] = j), k && (i.scale = k), f
					},
					prefix: !0
				}), ya("boxShadow", {
					defaultValue: "0px 0px 0px 0px #999",
					prefix: !0,
					color: !0,
					multi: !0,
					keyword: "inset"
				}), ya("borderRadius", {
					defaultValue: "0px",
					parser: function (a, b, c, f, g, h) {
						b = this.format(b);
						var i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y = ["borderTopLeftRadius", "borderTopRightRadius", "borderBottomRightRadius", "borderBottomLeftRadius"],
							z = a.style;
						for (q = parseFloat(a.offsetWidth), r = parseFloat(a.offsetHeight), i = b.split(" "), j = 0; j < y.length; j++) this.p.indexOf("border") && (y[j] = Z(y[j])), m = l = _(a, y[j], e, !1, "0px"), -1 !== m.indexOf(" ") && (l = m.split(" "), m = l[0], l = l[1]), n = k = i[j], o = parseFloat(m), t = m.substr((o + "").length), u = "=" === n.charAt(1), u ? (p = parseInt(n.charAt(0) + "1", 10), n = n.substr(2), p *= parseFloat(n), s = n.substr((p + "").length - (0 > p ? 1 : 0)) || "") : (p = parseFloat(n), s = n.substr((p + "").length)), "" === s && (s = d[c] || t), s !== t && (v = aa(a, "borderLeft", o, t), w = aa(a, "borderTop", o, t), "%" === s ? (m = v / q * 100 + "%", l = w / r * 100 + "%") : "em" === s ? (x = aa(a, "borderLeft", 1, "em"), m = v / x + "em", l = w / x + "em") : (m = v + "px", l = w + "px"), u && (n = parseFloat(m) + p + s, k = parseFloat(l) + p + s)), g = va(z, y[j], m + " " + l, n + " " + k, !1, "0px", g);
						return g
					},
					prefix: !0,
					formatter: qa("0px 0px 0px 0px", !1, !0)
				}), ya("borderBottomLeftRadius,borderBottomRightRadius,borderTopLeftRadius,borderTopRightRadius", {
					defaultValue: "0px",
					parser: function (a, b, c, d, f, g) {
						return va(a.style, c, this.format(_(a, c, e, !1, "0px 0px")), this.format(b), !1, "0px", f)
					},
					prefix: !0,
					formatter: qa("0px 0px", !1, !0)
				}), ya("backgroundPosition", {
					defaultValue: "0 0",
					parser: function (a, b, c, d, f, g) {
						var h, i, j, k, l, m, n = "background-position",
							o = e || $(a, null),
							q = this.format((o ? p ? o.getPropertyValue(n + "-x") + " " + o.getPropertyValue(n + "-y") : o.getPropertyValue(n) : a.currentStyle.backgroundPositionX + " " + a.currentStyle.backgroundPositionY) || "0 0"),
							r = this.format(b);
						if (-1 !== q.indexOf("%") != (-1 !== r.indexOf("%")) && r.split(",").length < 2 && (m = _(a, "backgroundImage").replace(D, ""), m && "none" !== m)) {
							for (h = q.split(" "), i = r.split(" "), R.setAttribute("src", m), j = 2; --j > -1;) q = h[j], k = -1 !== q.indexOf("%"), k !== (-1 !== i[j].indexOf("%")) && (l = 0 === j ? a.offsetWidth - R.width : a.offsetHeight - R.height, h[j] = k ? parseFloat(q) / 100 * l + "px" : parseFloat(q) / l * 100 + "%");
							q = h.join(" ")
						}
						return this.parseComplex(a.style, q, r, f, g)
					},
					formatter: ha
				}), ya("backgroundSize", {
					defaultValue: "0 0",
					formatter: function (a) {
						return a += "", ha(-1 === a.indexOf(" ") ? a + " " + a : a)
					}
				}), ya("perspective", {
					defaultValue: "0px",
					prefix: !0
				}), ya("perspectiveOrigin", {
					defaultValue: "50% 50%",
					prefix: !0
				}), ya("transformStyle", {
					prefix: !0
				}), ya("backfaceVisibility", {
					prefix: !0
				}), ya("userSelect", {
					prefix: !0
				}), ya("margin", {
					parser: ra("marginTop,marginRight,marginBottom,marginLeft")
				}), ya("padding", {
					parser: ra("paddingTop,paddingRight,paddingBottom,paddingLeft")
				}), ya("clip", {
					defaultValue: "rect(0px,0px,0px,0px)",
					parser: function (a, b, c, d, f, g) {
						var h, i, j;
						return 9 > p ? (i = a.currentStyle, j = 8 > p ? " " : ",", h = "rect(" + i.clipTop + j + i.clipRight + j + i.clipBottom + j + i.clipLeft + ")", b = this.format(b).split(",").join(j)) : (h = this.format(_(a, this.p, e, !1, this.dflt)), b = this.format(b)), this.parseComplex(a.style, h, b, f, g)
					}
				}), ya("textShadow", {
					defaultValue: "0px 0px 0px #999",
					color: !0,
					multi: !0
				}), ya("autoRound,strictUnits", {
					parser: function (a, b, c, d, e) {
						return e
					}
				}), ya("border", {
					defaultValue: "0px solid #000",
					parser: function (a, b, c, d, f, g) {
						var h = _(a, "borderTopWidth", e, !1, "0px"),
							i = this.format(b).split(" "),
							j = i[0].replace(w, "");
						return "px" !== j && (h = parseFloat(h) / aa(a, "borderTopWidth", 1, j) + j), this.parseComplex(a.style, this.format(h + " " + _(a, "borderTopStyle", e, !1, "solid") + " " + _(a, "borderTopColor", e, !1, "#000")), i.join(" "), f, g)
					},
					color: !0,
					formatter: function (a) {
						var b = a.split(" ");
						return b[0] + " " + (b[1] || "solid") + " " + (a.match(pa) || ["#000"])[0]
					}
				}), ya("borderWidth", {
					parser: ra("borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth")
				}), ya("float,cssFloat,styleFloat", {
					parser: function (a, b, c, d, e, f) {
						var g = a.style,
							h = "cssFloat" in g ? "cssFloat" : "styleFloat";
						return new ta(g, h, 0, 0, e, -1, c, !1, 0, g[h], b)
					}
				});
				var Ua = function (a) {
					var b, c = this.t,
						d = c.filter || _(this.data, "filter") || "",
						e = this.s + this.c * a | 0;
					100 === e && (-1 === d.indexOf("atrix(") && -1 === d.indexOf("radient(") && -1 === d.indexOf("oader(") ? (c.removeAttribute("filter"), b = !_(this.data, "filter")) : (c.filter = d.replace(z, ""), b = !0)), b || (this.xn1 && (c.filter = d = d || "alpha(opacity=" + e + ")"), -1 === d.indexOf("pacity") ? 0 === e && this.xn1 || (c.filter = d + " alpha(opacity=" + e + ")") : c.filter = d.replace(x, "opacity=" + e))
				};
				ya("opacity,alpha,autoAlpha", {
					defaultValue: "1",
					parser: function (a, b, c, d, f, g) {
						var h = parseFloat(_(a, "opacity", e, !1, "1")),
							i = a.style,
							j = "autoAlpha" === c;
						return "string" == typeof b && "=" === b.charAt(1) && (b = ("-" === b.charAt(0) ? -1 : 1) * parseFloat(b.substr(2)) + h), j && 1 === h && "hidden" === _(a, "visibility", e) && 0 !== b && (h = 0), U ? f = new ta(i, "opacity", h, b - h, f) : (f = new ta(i, "opacity", 100 * h, 100 * (b - h), f), f.xn1 = j ? 1 : 0, i.zoom = 1, f.type = 2, f.b = "alpha(opacity=" + f.s + ")", f.e = "alpha(opacity=" + (f.s + f.c) + ")", f.data = a, f.plugin = g, f.setRatio = Ua), j && (f = new ta(i, "visibility", 0, 0, f, -1, null, !1, 0, 0 !== h ? "inherit" : "hidden", 0 === b ? "hidden" : "inherit"), f.xs0 = "inherit", d._overwriteProps.push(f.n), d._overwriteProps.push(c)), f
					}
				});
				var Va = function (a, b) {
						b && (a.removeProperty ? (("ms" === b.substr(0, 2) || "webkit" === b.substr(0, 6)) && (b = "-" + b), a.removeProperty(b.replace(B, "-$1").toLowerCase())) : a.removeAttribute(b))
					},
					Wa = function (a) {
						if (this.t._gsClassPT = this, 1 === a || 0 === a) {
							this.t.setAttribute("class", 0 === a ? this.b : this.e);
							for (var b = this.data, c = this.t.style; b;) b.v ? c[b.p] = b.v : Va(c, b.p), b = b._next;
							1 === a && this.t._gsClassPT === this && (this.t._gsClassPT = null)
						} else this.t.getAttribute("class") !== this.e && this.t.setAttribute("class", this.e)
					};
				ya("className", {
					parser: function (a, b, d, f, g, h, i) {
						var j, k, l, m, n, o = a.getAttribute("class") || "",
							p = a.style.cssText;
						if (g = f._classNamePT = new ta(a, d, 0, 0, g, 2), g.setRatio = Wa, g.pr = -11, c = !0, g.b = o, k = ca(a, e), l = a._gsClassPT) {
							for (m = {}, n = l.data; n;) m[n.p] = 1, n = n._next;
							l.setRatio(1)
						}
						return a._gsClassPT = g, g.e = "=" !== b.charAt(1) ? b : o.replace(new RegExp("(?:\\s|^)" + b.substr(2) + "(?![\\w-])"), "") + ("+" === b.charAt(0) ? " " + b.substr(2) : ""), a.setAttribute("class", g.e), j = da(a, k, ca(a), i, m), a.setAttribute("class", o), g.data = j.firstMPT, a.style.cssText = p, g = g.xfirst = f.parse(a, j.difs, g, h)
					}
				});
				var Xa = function (a) {
					if ((1 === a || 0 === a) && this.data._totalTime === this.data._totalDuration && "isFromStart" !== this.data.data) {
						var b, c, d, e, f, g = this.t.style,
							h = i.transform.parse;
						if ("all" === this.e) g.cssText = "", e = !0;
						else
							for (b = this.e.split(" ").join("").split(","), d = b.length; --d > -1;) c = b[d], i[c] && (i[c].parse === h ? e = !0 : c = "transformOrigin" === c ? Ea : i[c].p), Va(g, c);
						e && (Va(g, Ca), f = this.t._gsTransform, f && (f.svg && (this.t.removeAttribute("data-svg-origin"), this.t.removeAttribute("transform")), delete this.t._gsTransform))
					}
				};
				for (ya("clearProps", {
						parser: function (a, b, d, e, f) {
							return f = new ta(a, d, 0, 0, f, 2), f.setRatio = Xa, f.e = b, f.pr = -10, f.data = e._tween, c = !0, f
						}
					}), j = "bezier,throwProps,physicsProps,physics2D".split(","), wa = j.length; wa--;) za(j[wa]);
				j = g.prototype, j._firstPT = j._lastParsedTransform = j._transform = null, j._onInitTween = function (a, b, h, j) {
					if (!a.nodeType) return !1;
					this._target = q = a, this._tween = h, this._vars = b, r = j, k = b.autoRound, c = !1, d = b.suffixMap || g.suffixMap, e = $(a, ""), f = this._overwriteProps;
					var n, p, s, t, u, v, w, x, z, A = a.style;
					if (l && "" === A.zIndex && (n = _(a, "zIndex", e), ("auto" === n || "" === n) && this._addLazySet(A, "zIndex", 0)), "string" == typeof b && (t = A.cssText, n = ca(a, e), A.cssText = t + ";" + b, n = da(a, n, ca(a)).difs, !U && y.test(b) && (n.opacity = parseFloat(RegExp.$1)), b = n, A.cssText = t), b.className ? this._firstPT = p = i.className.parse(a, b.className, "className", this, null, null, b) : this._firstPT = p = this.parse(a, b, null), this._transformType) {
						for (z = 3 === this._transformType, Ca ? m && (l = !0, "" === A.zIndex && (w = _(a, "zIndex", e), ("auto" === w || "" === w) && this._addLazySet(A, "zIndex", 0)), o && this._addLazySet(A, "WebkitBackfaceVisibility", this._vars.WebkitBackfaceVisibility || (z ? "visible" : "hidden"))) : A.zoom = 1, s = p; s && s._next;) s = s._next;
						x = new ta(a, "transform", 0, 0, null, 2), this._linkCSSP(x, null, s), x.setRatio = Ca ? Ta : Sa, x.data = this._transform || Ra(a, e, !0), x.tween = h, x.pr = -1, f.pop()
					}
					if (c) {
						for (; p;) {
							for (v = p._next, s = t; s && s.pr > p.pr;) s = s._next;
							(p._prev = s ? s._prev : u) ? p._prev._next = p: t = p, (p._next = s) ? s._prev = p : u = p, p = v
						}
						this._firstPT = t
					}
					return !0
				}, j.parse = function (a, b, c, f) {
					var g, h, j, l, m, n, o, p, s, t, u = a.style;
					for (g in b) {
						if (n = b[g], "function" == typeof n && (n = n(r, q)), h = i[g]) c = h.parse(a, n, g, this, c, f, b);
						else {
							if ("--" === g.substr(0, 2)) {
								this._tween._propLookup[g] = this._addTween.call(this._tween, a.style, "setProperty", $(a).getPropertyValue(g) + "", n + "", g, !1, g);
								continue
							}
							m = _(a, g, e) + "", s = "string" == typeof n, "color" === g || "fill" === g || "stroke" === g || -1 !== g.indexOf("Color") || s && A.test(n) ? (s || (n = na(n), n = (n.length > 3 ? "rgba(" : "rgb(") + n.join(",") + ")"), c = va(u, g, m, n, !0, "transparent", c, 0, f)) : s && J.test(n) ? c = va(u, g, m, n, !0, null, c, 0, f) : (j = parseFloat(m), o = j || 0 === j ? m.substr((j + "").length) : "", ("" === m || "auto" === m) && ("width" === g || "height" === g ? (j = ga(a, g, e), o = "px") : "left" === g || "top" === g ? (j = ba(a, g, e), o = "px") : (j = "opacity" !== g ? 0 : 1, o = "")), t = s && "=" === n.charAt(1), t ? (l = parseInt(n.charAt(0) + "1", 10), n = n.substr(2), l *= parseFloat(n), p = n.replace(w, "")) : (l = parseFloat(n), p = s ? n.replace(w, "") : ""), "" === p && (p = g in d ? d[g] : o), n = l || 0 === l ? (t ? l + j : l) + p : b[g], o !== p && ("" !== p || "lineHeight" === g) && (l || 0 === l) && j && (j = aa(a, g, j, o), "%" === p ? (j /= aa(a, g, 100, "%") / 100, b.strictUnits !== !0 && (m = j + "%")) : "em" === p || "rem" === p || "vw" === p || "vh" === p ? j /= aa(a, g, 1, p) : "px" !== p && (l = aa(a, g, l, p), p = "px"), t && (l || 0 === l) && (n = l + j + p)), t && (l += j), !j && 0 !== j || !l && 0 !== l ? void 0 !== u[g] && (n || n + "" != "NaN" && null != n) ? (c = new ta(u, g, l || j || 0, 0, c, -1, g, !1, 0, m, n), c.xs0 = "none" !== n || "display" !== g && -1 === g.indexOf("Style") ? n : m) : W("invalid " + g + " tween value: " + b[g]) : (c = new ta(u, g, j, l - j, c, 0, g, k !== !1 && ("px" === p || "zIndex" === g), 0, m, n), c.xs0 = p))
						}
						f && c && !c.plugin && (c.plugin = f)
					}
					return c
				}, j.setRatio = function (a) {
					var b, c, d, e = this._firstPT,
						f = 1e-6;
					if (1 !== a || this._tween._time !== this._tween._duration && 0 !== this._tween._time)
						if (a || this._tween._time !== this._tween._duration && 0 !== this._tween._time || this._tween._rawPrevTime === -1e-6)
							for (; e;) {
								if (b = e.c * a + e.s, e.r ? b = Math.round(b) : f > b && b > -f && (b = 0), e.type)
									if (1 === e.type)
										if (d = e.l, 2 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2;
										else if (3 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3;
								else if (4 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3 + e.xn3 + e.xs4;
								else if (5 === d) e.t[e.p] = e.xs0 + b + e.xs1 + e.xn1 + e.xs2 + e.xn2 + e.xs3 + e.xn3 + e.xs4 + e.xn4 + e.xs5;
								else {
									for (c = e.xs0 + b + e.xs1, d = 1; d < e.l; d++) c += e["xn" + d] + e["xs" + (d + 1)];
									e.t[e.p] = c
								} else -1 === e.type ? e.t[e.p] = e.xs0 : e.setRatio && e.setRatio(a);
								else e.t[e.p] = b + e.xs0;
								e = e._next
							} else
								for (; e;) 2 !== e.type ? e.t[e.p] = e.b : e.setRatio(a), e = e._next;
						else
							for (; e;) {
								if (2 !== e.type)
									if (e.r && -1 !== e.type)
										if (b = Math.round(e.s + e.c), e.type) {
											if (1 === e.type) {
												for (d = e.l, c = e.xs0 + b + e.xs1, d = 1; d < e.l; d++) c += e["xn" + d] + e["xs" + (d + 1)];
												e.t[e.p] = c
											}
										} else e.t[e.p] = b + e.xs0;
								else e.t[e.p] = e.e;
								else e.setRatio(a);
								e = e._next
							}
				}, j._enableTransforms = function (a) {
					this._transform = this._transform || Ra(this._target, e, !0), this._transformType = this._transform.svg && Aa || !a && 3 !== this._transformType ? 2 : 3
				};
				var Ya = function (a) {
					this.t[this.p] = this.e, this.data._linkCSSP(this, this._next, null, !0)
				};
				j._addLazySet = function (a, b, c) {
					var d = this._firstPT = new ta(a, b, 0, 0, this._firstPT, 2);
					d.e = c, d.setRatio = Ya, d.data = this
				}, j._linkCSSP = function (a, b, c, d) {
					return a && (b && (b._prev = a), a._next && (a._next._prev = a._prev), a._prev ? a._prev._next = a._next : this._firstPT === a && (this._firstPT = a._next, d = !0), c ? c._next = a : d || null !== this._firstPT || (this._firstPT = a), a._next = b, a._prev = c), a
				}, j._mod = function (a) {
					for (var b = this._firstPT; b;) "function" == typeof a[b.p] && a[b.p] === Math.round && (b.r = 1), b = b._next
				}, j._kill = function (b) {
					var c, d, e, f = b;
					if (b.autoAlpha || b.alpha) {
						f = {};
						for (d in b) f[d] = b[d];
						f.opacity = 1, f.autoAlpha && (f.visibility = 1)
					}
					for (b.className && (c = this._classNamePT) && (e = c.xfirst, e && e._prev ? this._linkCSSP(e._prev, c._next, e._prev._prev) : e === this._firstPT && (this._firstPT = c._next), c._next && this._linkCSSP(c._next, c._next._next, e._prev), this._classNamePT = null), c = this._firstPT; c;) c.plugin && c.plugin !== d && c.plugin._kill && (c.plugin._kill(b), d = c.plugin), c = c._next;
					return a.prototype._kill.call(this, f)
				};
				var Za = function (a, b, c) {
					var d, e, f, g;
					if (a.slice)
						for (e = a.length; --e > -1;) Za(a[e], b, c);
					else
						for (d = a.childNodes, e = d.length; --e > -1;) f = d[e], g = f.type, f.style && (b.push(ca(f)), c && c.push(f)), 1 !== g && 9 !== g && 11 !== g || !f.childNodes.length || Za(f, b, c)
				};
				return g.cascadeTo = function (a, c, d) {
					var e, f, g, h, i = b.to(a, c, d),
						j = [i],
						k = [],
						l = [],
						m = [],
						n = b._internals.reservedProps;
					for (a = i._targets || i.target, Za(a, k, m), i.render(c, !0, !0), Za(a, l), i.render(0, !0, !0), i._enabled(!0), e = m.length; --e > -1;)
						if (f = da(m[e], k[e], l[e]), f.firstMPT) {
							f = f.difs;
							for (g in d) n[g] && (f[g] = d[g]);
							h = {};
							for (g in f) h[g] = k[e][g];
							j.push(b.fromTo(m[e], c, h, f))
						}
					return j
				}, a.activate([g]), g
			}, !0),
			function () {
				var a = _gsScope._gsDefine.plugin({
						propName: "roundProps",
						version: "1.6.0",
						priority: -1,
						API: 2,
						init: function (a, b, c) {
							return this._tween = c, !0
						}
					}),
					b = function (a) {
						for (; a;) a.f || a.blob || (a.m = Math.round), a = a._next
					},
					c = a.prototype;
				c._onInitAllProps = function () {
					for (var a, c, d, e = this._tween, f = e.vars.roundProps.join ? e.vars.roundProps : e.vars.roundProps.split(","), g = f.length, h = {}, i = e._propLookup.roundProps; --g > -1;) h[f[g]] = Math.round;
					for (g = f.length; --g > -1;)
						for (a = f[g], c = e._firstPT; c;) d = c._next, c.pg ? c.t._mod(h) : c.n === a && (2 === c.f && c.t ? b(c.t._firstPT) : (this._add(c.t, a, c.s, c.c), d && (d._prev = c._prev), c._prev ? c._prev._next = d : e._firstPT === c && (e._firstPT = d), c._next = c._prev = null, e._propLookup[a] = i)), c = d;
					return !1
				}, c._add = function (a, b, c, d) {
					this._addTween(a, b, c, c + d, b, Math.round), this._overwriteProps.push(b)
				}
			}(),
			function () {
				_gsScope._gsDefine.plugin({
					propName: "attr",
					API: 2,
					version: "0.6.1",
					init: function (a, b, c, d) {
						var e, f;
						if ("function" != typeof a.setAttribute) return !1;
						for (e in b) f = b[e], "function" == typeof f && (f = f(d, a)), this._addTween(a, "setAttribute", a.getAttribute(e) + "", f + "", e, !1, e), this._overwriteProps.push(e);
						return !0
					}
				})
			}(), _gsScope._gsDefine.plugin({
				propName: "directionalRotation",
				version: "0.3.1",
				API: 2,
				init: function (a, b, c, d) {
					"object" != typeof b && (b = {
						rotation: b
					}), this.finals = {};
					var e, f, g, h, i, j, k = b.useRadians === !0 ? 2 * Math.PI : 360,
						l = 1e-6;
					for (e in b) "useRadians" !== e && (h = b[e], "function" == typeof h && (h = h(d, a)), j = (h + "").split("_"), f = j[0], g = parseFloat("function" != typeof a[e] ? a[e] : a[e.indexOf("set") || "function" != typeof a["get" + e.substr(3)] ? e : "get" + e.substr(3)]()), h = this.finals[e] = "string" == typeof f && "=" === f.charAt(1) ? g + parseInt(f.charAt(0) + "1", 10) * Number(f.substr(2)) : Number(f) || 0, i = h - g, j.length && (f = j.join("_"), -1 !== f.indexOf("short") && (i %= k, i !== i % (k / 2) && (i = 0 > i ? i + k : i - k)), -1 !== f.indexOf("_cw") && 0 > i ? i = (i + 9999999999 * k) % k - (i / k | 0) * k : -1 !== f.indexOf("ccw") && i > 0 && (i = (i - 9999999999 * k) % k - (i / k | 0) * k)), (i > l || -l > i) && (this._addTween(a, e, g, g + i, e), this._overwriteProps.push(e)));
					return !0
				},
				set: function (a) {
					var b;
					if (1 !== a) this._super.setRatio.call(this, a);
					else
						for (b = this._firstPT; b;) b.f ? b.t[b.p](this.finals[b.p]) : b.t[b.p] = this.finals[b.p], b = b._next
				}
			})._autoCSS = !0, _gsScope._gsDefine("easing.Back", ["easing.Ease"], function (a) {
				var b, c, d, e = _gsScope.GreenSockGlobals || _gsScope,
					f = e.com.greensock,
					g = 2 * Math.PI,
					h = Math.PI / 2,
					i = f._class,
					j = function (b, c) {
						var d = i("easing." + b, function () {}, !0),
							e = d.prototype = new a;
						return e.constructor = d, e.getRatio = c, d
					},
					k = a.register || function () {},
					l = function (a, b, c, d, e) {
						var f = i("easing." + a, {
							easeOut: new b,
							easeIn: new c,
							easeInOut: new d
						}, !0);
						return k(f, a), f
					},
					m = function (a, b, c) {
						this.t = a, this.v = b, c && (this.next = c, c.prev = this, this.c = c.v - b, this.gap = c.t - a)
					},
					n = function (b, c) {
						var d = i("easing." + b, function (a) {
								this._p1 = a || 0 === a ? a : 1.70158, this._p2 = 1.525 * this._p1
							}, !0),
							e = d.prototype = new a;
						return e.constructor = d, e.getRatio = c, e.config = function (a) {
							return new d(a)
						}, d
					},
					o = l("Back", n("BackOut", function (a) {
						return (a -= 1) * a * ((this._p1 + 1) * a + this._p1) + 1
					}), n("BackIn", function (a) {
						return a * a * ((this._p1 + 1) * a - this._p1)
					}), n("BackInOut", function (a) {
						return (a *= 2) < 1 ? .5 * a * a * ((this._p2 + 1) * a - this._p2) : .5 * ((a -= 2) * a * ((this._p2 + 1) * a + this._p2) + 2)
					})),
					p = i("easing.SlowMo", function (a, b, c) {
						b = b || 0 === b ? b : .7, null == a ? a = .7 : a > 1 && (a = 1), this._p = 1 !== a ? b : 0, this._p1 = (1 - a) / 2, this._p2 = a, this._p3 = this._p1 + this._p2, this._calcEnd = c === !0
					}, !0),
					q = p.prototype = new a;
				return q.constructor = p, q.getRatio = function (a) {
					var b = a + (.5 - a) * this._p;
					return a < this._p1 ? this._calcEnd ? 1 - (a = 1 - a / this._p1) * a : b - (a = 1 - a / this._p1) * a * a * a * b : a > this._p3 ? this._calcEnd ? 1 - (a = (a - this._p3) / this._p1) * a : b + (a - b) * (a = (a - this._p3) / this._p1) * a * a * a : this._calcEnd ? 1 : b
				}, p.ease = new p(.7, .7), q.config = p.config = function (a, b, c) {
					return new p(a, b, c)
				}, b = i("easing.SteppedEase", function (a, b) {
					a = a || 1, this._p1 = 1 / a, this._p2 = a + (b ? 0 : 1), this._p3 = b ? 1 : 0
				}, !0), q = b.prototype = new a, q.constructor = b, q.getRatio = function (a) {
					return 0 > a ? a = 0 : a >= 1 && (a = .999999999), ((this._p2 * a | 0) + this._p3) * this._p1
				}, q.config = b.config = function (a, c) {
					return new b(a, c)
				}, c = i("easing.RoughEase", function (b) {
					b = b || {};
					for (var c, d, e, f, g, h, i = b.taper || "none", j = [], k = 0, l = 0 | (b.points || 20), n = l, o = b.randomize !== !1, p = b.clamp === !0, q = b.template instanceof a ? b.template : null, r = "number" == typeof b.strength ? .4 * b.strength : .4; --n > -1;) c = o ? Math.random() : 1 / l * n, d = q ? q.getRatio(c) : c, "none" === i ? e = r : "out" === i ? (f = 1 - c, e = f * f * r) : "in" === i ? e = c * c * r : .5 > c ? (f = 2 * c, e = f * f * .5 * r) : (f = 2 * (1 - c), e = f * f * .5 * r), o ? d += Math.random() * e - .5 * e : n % 2 ? d += .5 * e : d -= .5 * e, p && (d > 1 ? d = 1 : 0 > d && (d = 0)), j[k++] = {
						x: c,
						y: d
					};
					for (j.sort(function (a, b) {
							return a.x - b.x
						}), h = new m(1, 1, null), n = l; --n > -1;) g = j[n], h = new m(g.x, g.y, h);
					this._prev = new m(0, 0, 0 !== h.t ? h : h.next)
				}, !0), q = c.prototype = new a, q.constructor = c, q.getRatio = function (a) {
					var b = this._prev;
					if (a > b.t) {
						for (; b.next && a >= b.t;) b = b.next;
						b = b.prev
					} else
						for (; b.prev && a <= b.t;) b = b.prev;
					return this._prev = b, b.v + (a - b.t) / b.gap * b.c
				}, q.config = function (a) {
					return new c(a)
				}, c.ease = new c, l("Bounce", j("BounceOut", function (a) {
					return 1 / 2.75 > a ? 7.5625 * a * a : 2 / 2.75 > a ? 7.5625 * (a -= 1.5 / 2.75) * a + .75 : 2.5 / 2.75 > a ? 7.5625 * (a -= 2.25 / 2.75) * a + .9375 : 7.5625 * (a -= 2.625 / 2.75) * a + .984375
				}), j("BounceIn", function (a) {
					return (a = 1 - a) < 1 / 2.75 ? 1 - 7.5625 * a * a : 2 / 2.75 > a ? 1 - (7.5625 * (a -= 1.5 / 2.75) * a + .75) : 2.5 / 2.75 > a ? 1 - (7.5625 * (a -= 2.25 / 2.75) * a + .9375) : 1 - (7.5625 * (a -= 2.625 / 2.75) * a + .984375)
				}), j("BounceInOut", function (a) {
					var b = .5 > a;
					return a = b ? 1 - 2 * a : 2 * a - 1, a = 1 / 2.75 > a ? 7.5625 * a * a : 2 / 2.75 > a ? 7.5625 * (a -= 1.5 / 2.75) * a + .75 : 2.5 / 2.75 > a ? 7.5625 * (a -= 2.25 / 2.75) * a + .9375 : 7.5625 * (a -= 2.625 / 2.75) * a + .984375, b ? .5 * (1 - a) : .5 * a + .5
				})), l("Circ", j("CircOut", function (a) {
					return Math.sqrt(1 - (a -= 1) * a)
				}), j("CircIn", function (a) {
					return -(Math.sqrt(1 - a * a) - 1)
				}), j("CircInOut", function (a) {
					return (a *= 2) < 1 ? -.5 * (Math.sqrt(1 - a * a) - 1) : .5 * (Math.sqrt(1 - (a -= 2) * a) + 1)
				})), d = function (b, c, d) {
					var e = i("easing." + b, function (a, b) {
							this._p1 = a >= 1 ? a : 1, this._p2 = (b || d) / (1 > a ? a : 1), this._p3 = this._p2 / g * (Math.asin(1 / this._p1) || 0), this._p2 = g / this._p2
						}, !0),
						f = e.prototype = new a;
					return f.constructor = e, f.getRatio = c, f.config = function (a, b) {
						return new e(a, b)
					}, e
				}, l("Elastic", d("ElasticOut", function (a) {
					return this._p1 * Math.pow(2, -10 * a) * Math.sin((a - this._p3) * this._p2) + 1
				}, .3), d("ElasticIn", function (a) {
					return -(this._p1 * Math.pow(2, 10 * (a -= 1)) * Math.sin((a - this._p3) * this._p2))
				}, .3), d("ElasticInOut", function (a) {
					return (a *= 2) < 1 ? -.5 * (this._p1 * Math.pow(2, 10 * (a -= 1)) * Math.sin((a - this._p3) * this._p2)) : this._p1 * Math.pow(2, -10 * (a -= 1)) * Math.sin((a - this._p3) * this._p2) * .5 + 1
				}, .45)), l("Expo", j("ExpoOut", function (a) {
					return 1 - Math.pow(2, -10 * a)
				}), j("ExpoIn", function (a) {
					return Math.pow(2, 10 * (a - 1)) - .001
				}), j("ExpoInOut", function (a) {
					return (a *= 2) < 1 ? .5 * Math.pow(2, 10 * (a - 1)) : .5 * (2 - Math.pow(2, -10 * (a - 1)))
				})), l("Sine", j("SineOut", function (a) {
					return Math.sin(a * h)
				}), j("SineIn", function (a) {
					return -Math.cos(a * h) + 1
				}), j("SineInOut", function (a) {
					return -.5 * (Math.cos(Math.PI * a) - 1)
				})), i("easing.EaseLookup", {
					find: function (b) {
						return a.map[b]
					}
				}, !0), k(e.SlowMo, "SlowMo", "ease,"), k(c, "RoughEase", "ease,"), k(b, "SteppedEase", "ease,"), o
			}, !0)
	}), _gsScope._gsDefine && _gsScope._gsQueue.pop()(),
	function (a, b) {
		"use strict";
		var c = {},
			d = a.document,
			e = a.GreenSockGlobals = a.GreenSockGlobals || a;
		if (!e.TweenLite) {
			var f, g, h, i, j, k = function (a) {
					var b, c = a.split("."),
						d = e;
					for (b = 0; b < c.length; b++) d[c[b]] = d = d[c[b]] || {};
					return d
				},
				l = k("com.greensock"),
				m = 1e-10,
				n = function (a) {
					var b, c = [],
						d = a.length;
					for (b = 0; b !== d; c.push(a[b++]));
					return c
				},
				o = function () {},
				p = function () {
					var a = Object.prototype.toString,
						b = a.call([]);
					return function (c) {
						return null != c && (c instanceof Array || "object" == typeof c && !!c.push && a.call(c) === b)
					}
				}(),
				q = {},
				r = function (d, f, g, h) {
					this.sc = q[d] ? q[d].sc : [], q[d] = this, this.gsClass = null, this.func = g;
					var i = [];
					this.check = function (j) {
						for (var l, m, n, o, p = f.length, s = p; --p > -1;)(l = q[f[p]] || new r(f[p], [])).gsClass ? (i[p] = l.gsClass, s--) : j && l.sc.push(this);
						if (0 === s && g) {
							if (m = ("com.greensock." + d).split("."), n = m.pop(), o = k(m.join("."))[n] = this.gsClass = g.apply(g, i), h)
								if (e[n] = c[n] = o, "undefined" != typeof module && module.exports)
									if (d === b) {
										module.exports = c[b] = o;
										for (p in c) o[p] = c[p]
									} else c[b] && (c[b][n] = o);
							else "function" == typeof define && define.amd && define((a.GreenSockAMDPath ? a.GreenSockAMDPath + "/" : "") + d.split(".").pop(), [], function () {
								return o
							});
							for (p = 0; p < this.sc.length; p++) this.sc[p].check()
						}
					}, this.check(!0)
				},
				s = a._gsDefine = function (a, b, c, d) {
					return new r(a, b, c, d)
				},
				t = l._class = function (a, b, c) {
					return b = b || function () {}, s(a, [], function () {
						return b
					}, c), b
				};
			s.globals = e;
			var u = [0, 0, 1, 1],
				v = t("easing.Ease", function (a, b, c, d) {
					this._func = a, this._type = c || 0, this._power = d || 0, this._params = b ? u.concat(b) : u
				}, !0),
				w = v.map = {},
				x = v.register = function (a, b, c, d) {
					for (var e, f, g, h, i = b.split(","), j = i.length, k = (c || "easeIn,easeOut,easeInOut").split(","); --j > -1;)
						for (f = i[j], e = d ? t("easing." + f, null, !0) : l.easing[f] || {}, g = k.length; --g > -1;) h = k[g], w[f + "." + h] = w[h + f] = e[h] = a.getRatio ? a : a[h] || new a
				};
			for (h = v.prototype, h._calcEnd = !1, h.getRatio = function (a) {
					if (this._func) return this._params[0] = a, this._func.apply(null, this._params);
					var b = this._type,
						c = this._power,
						d = 1 === b ? 1 - a : 2 === b ? a : .5 > a ? 2 * a : 2 * (1 - a);
					return 1 === c ? d *= d : 2 === c ? d *= d * d : 3 === c ? d *= d * d * d : 4 === c && (d *= d * d * d * d), 1 === b ? 1 - d : 2 === b ? d : .5 > a ? d / 2 : 1 - d / 2
				}, f = ["Linear", "Quad", "Cubic", "Quart", "Quint,Strong"], g = f.length; --g > -1;) h = f[g] + ",Power" + g, x(new v(null, null, 1, g), h, "easeOut", !0), x(new v(null, null, 2, g), h, "easeIn" + (0 === g ? ",easeNone" : "")), x(new v(null, null, 3, g), h, "easeInOut");
			w.linear = l.easing.Linear.easeIn, w.swing = l.easing.Quad.easeInOut;
			var y = t("events.EventDispatcher", function (a) {
				this._listeners = {}, this._eventTarget = a || this
			});
			h = y.prototype, h.addEventListener = function (a, b, c, d, e) {
				e = e || 0;
				var f, g, h = this._listeners[a],
					k = 0;
				for (this !== i || j || i.wake(), null == h && (this._listeners[a] = h = []), g = h.length; --g > -1;) f = h[g], f.c === b && f.s === c ? h.splice(g, 1) : 0 === k && f.pr < e && (k = g + 1);
				h.splice(k, 0, {
					c: b,
					s: c,
					up: d,
					pr: e
				})
			}, h.removeEventListener = function (a, b) {
				var c, d = this._listeners[a];
				if (d)
					for (c = d.length; --c > -1;)
						if (d[c].c === b) return void d.splice(c, 1)
			}, h.dispatchEvent = function (a) {
				var b, c, d, e = this._listeners[a];
				if (e)
					for (b = e.length, b > 1 && (e = e.slice(0)), c = this._eventTarget; --b > -1;) d = e[b], d && (d.up ? d.c.call(d.s || c, {
						type: a,
						target: c
					}) : d.c.call(d.s || c))
			};
			var z = a.requestAnimationFrame,
				A = a.cancelAnimationFrame,
				B = Date.now || function () {
					return (new Date).getTime()
				},
				C = B();
			for (f = ["ms", "moz", "webkit", "o"], g = f.length; --g > -1 && !z;) z = a[f[g] + "RequestAnimationFrame"], A = a[f[g] + "CancelAnimationFrame"] || a[f[g] + "CancelRequestAnimationFrame"];
			t("Ticker", function (a, b) {
				var c, e, f, g, h, k = this,
					l = B(),
					n = b !== !1 && z ? "auto" : !1,
					p = 500,
					q = 33,
					r = "tick",
					s = function (a) {
						var b, d, i = B() - C;
						i > p && (l += i - q), C += i, k.time = (C - l) / 1e3, b = k.time - h, (!c || b > 0 || a === !0) && (k.frame++, h += b + (b >= g ? .004 : g - b), d = !0), a !== !0 && (f = e(s)), d && k.dispatchEvent(r)
					};
				y.call(k), k.time = k.frame = 0, k.tick = function () {
					s(!0)
				}, k.lagSmoothing = function (a, b) {
					p = a || 1 / m, q = Math.min(b, p, 0)
				}, k.sleep = function () {
					null != f && (n && A ? A(f) : clearTimeout(f), e = o, f = null, k === i && (j = !1))
				}, k.wake = function (a) {
					null !== f ? k.sleep() : a ? l += -C + (C = B()) : k.frame > 10 && (C = B() - p + 5), e = 0 === c ? o : n && z ? z : function (a) {
						return setTimeout(a, 1e3 * (h - k.time) + 1 | 0)
					}, k === i && (j = !0), s(2)
				}, k.fps = function (a) {
					return arguments.length ? (c = a, g = 1 / (c || 60), h = this.time + g, void k.wake()) : c
				}, k.useRAF = function (a) {
					return arguments.length ? (k.sleep(), n = a, void k.fps(c)) : n
				}, k.fps(a), setTimeout(function () {
					"auto" === n && k.frame < 5 && "hidden" !== d.visibilityState && k.useRAF(!1)
				}, 1500)
			}), h = l.Ticker.prototype = new l.events.EventDispatcher, h.constructor = l.Ticker;
			var D = t("core.Animation", function (a, b) {
				if (this.vars = b = b || {}, this._duration = this._totalDuration = a || 0, this._delay = Number(b.delay) || 0, this._timeScale = 1, this._active = b.immediateRender === !0, this.data = b.data, this._reversed = b.reversed === !0, X) {
					j || i.wake();
					var c = this.vars.useFrames ? W : X;
					c.add(this, c._time), this.vars.paused && this.paused(!0)
				}
			});
			i = D.ticker = new l.Ticker, h = D.prototype, h._dirty = h._gc = h._initted = h._paused = !1, h._totalTime = h._time = 0, h._rawPrevTime = -1, h._next = h._last = h._onUpdate = h._timeline = h.timeline = null, h._paused = !1;
			var E = function () {
				j && B() - C > 2e3 && "hidden" !== d.visibilityState && i.wake();
				var a = setTimeout(E, 2e3);
				a.unref && a.unref()
			};
			E(), h.play = function (a, b) {
				return null != a && this.seek(a, b), this.reversed(!1).paused(!1)
			}, h.pause = function (a, b) {
				return null != a && this.seek(a, b), this.paused(!0)
			}, h.resume = function (a, b) {
				return null != a && this.seek(a, b), this.paused(!1)
			}, h.seek = function (a, b) {
				return this.totalTime(Number(a), b !== !1)
			}, h.restart = function (a, b) {
				return this.reversed(!1).paused(!1).totalTime(a ? -this._delay : 0, b !== !1, !0)
			}, h.reverse = function (a, b) {
				return null != a && this.seek(a || this.totalDuration(), b), this.reversed(!0).paused(!1)
			}, h.render = function (a, b, c) {}, h.invalidate = function () {
				return this._time = this._totalTime = 0, this._initted = this._gc = !1, this._rawPrevTime = -1, (this._gc || !this.timeline) && this._enabled(!0), this
			}, h.isActive = function () {
				var a, b = this._timeline,
					c = this._startTime;
				return !b || !this._gc && !this._paused && b.isActive() && (a = b.rawTime(!0)) >= c && a < c + this.totalDuration() / this._timeScale - 1e-7
			}, h._enabled = function (a, b) {
				return j || i.wake(), this._gc = !a, this._active = this.isActive(), b !== !0 && (a && !this.timeline ? this._timeline.add(this, this._startTime - this._delay) : !a && this.timeline && this._timeline._remove(this, !0)), !1
			}, h._kill = function (a, b) {
				return this._enabled(!1, !1)
			}, h.kill = function (a, b) {
				return this._kill(a, b), this
			}, h._uncache = function (a) {
				for (var b = a ? this : this.timeline; b;) b._dirty = !0, b = b.timeline;
				return this
			}, h._swapSelfInParams = function (a) {
				for (var b = a.length, c = a.concat(); --b > -1;) "{self}" === a[b] && (c[b] = this);
				return c
			}, h._callback = function (a) {
				var b = this.vars,
					c = b[a],
					d = b[a + "Params"],
					e = b[a + "Scope"] || b.callbackScope || this,
					f = d ? d.length : 0;
				switch (f) {
					case 0:
						c.call(e);
						break;
					case 1:
						c.call(e, d[0]);
						break;
					case 2:
						c.call(e, d[0], d[1]);
						break;
					default:
						c.apply(e, d)
				}
			}, h.eventCallback = function (a, b, c, d) {
				if ("on" === (a || "").substr(0, 2)) {
					var e = this.vars;
					if (1 === arguments.length) return e[a];
					null == b ? delete e[a] : (e[a] = b, e[a + "Params"] = p(c) && -1 !== c.join("").indexOf("{self}") ? this._swapSelfInParams(c) : c, e[a + "Scope"] = d), "onUpdate" === a && (this._onUpdate = b)
				}
				return this
			}, h.delay = function (a) {
				return arguments.length ? (this._timeline.smoothChildTiming && this.startTime(this._startTime + a - this._delay), this._delay = a, this) : this._delay
			}, h.duration = function (a) {
				return arguments.length ? (this._duration = this._totalDuration = a, this._uncache(!0), this._timeline.smoothChildTiming && this._time > 0 && this._time < this._duration && 0 !== a && this.totalTime(this._totalTime * (a / this._duration), !0), this) : (this._dirty = !1, this._duration)
			}, h.totalDuration = function (a) {
				return this._dirty = !1, arguments.length ? this.duration(a) : this._totalDuration
			}, h.time = function (a, b) {
				return arguments.length ? (this._dirty && this.totalDuration(), this.totalTime(a > this._duration ? this._duration : a, b)) : this._time
			}, h.totalTime = function (a, b, c) {
				if (j || i.wake(), !arguments.length) return this._totalTime;
				if (this._timeline) {
					if (0 > a && !c && (a += this.totalDuration()), this._timeline.smoothChildTiming) {
						this._dirty && this.totalDuration();
						var d = this._totalDuration,
							e = this._timeline;
						if (a > d && !c && (a = d), this._startTime = (this._paused ? this._pauseTime : e._time) - (this._reversed ? d - a : a) / this._timeScale, e._dirty || this._uncache(!1), e._timeline)
							for (; e._timeline;) e._timeline._time !== (e._startTime + e._totalTime) / e._timeScale && e.totalTime(e._totalTime, !0), e = e._timeline
					}
					this._gc && this._enabled(!0, !1), (this._totalTime !== a || 0 === this._duration) && (J.length && Z(), this.render(a, b, !1), J.length && Z())
				}
				return this
			}, h.progress = h.totalProgress = function (a, b) {
				var c = this.duration();
				return arguments.length ? this.totalTime(c * a, b) : c ? this._time / c : this.ratio
			}, h.startTime = function (a) {
				return arguments.length ? (a !== this._startTime && (this._startTime = a, this.timeline && this.timeline._sortChildren && this.timeline.add(this, a - this._delay)), this) : this._startTime
			}, h.endTime = function (a) {
				return this._startTime + (0 != a ? this.totalDuration() : this.duration()) / this._timeScale
			}, h.timeScale = function (a) {
				if (!arguments.length) return this._timeScale;
				if (a = a || m, this._timeline && this._timeline.smoothChildTiming) {
					var b = this._pauseTime,
						c = b || 0 === b ? b : this._timeline.totalTime();
					this._startTime = c - (c - this._startTime) * this._timeScale / a
				}
				return this._timeScale = a, this._uncache(!1)
			}, h.reversed = function (a) {
				return arguments.length ? (a != this._reversed && (this._reversed = a, this.totalTime(this._timeline && !this._timeline.smoothChildTiming ? this.totalDuration() - this._totalTime : this._totalTime, !0)), this) : this._reversed
			}, h.paused = function (a) {
				if (!arguments.length) return this._paused;
				var b, c, d = this._timeline;
				return a != this._paused && d && (j || a || i.wake(), b = d.rawTime(), c = b - this._pauseTime, !a && d.smoothChildTiming && (this._startTime += c, this._uncache(!1)), this._pauseTime = a ? b : null, this._paused = a, this._active = this.isActive(), !a && 0 !== c && this._initted && this.duration() && (b = d.smoothChildTiming ? this._totalTime : (b - this._startTime) / this._timeScale, this.render(b, b === this._totalTime, !0))), this._gc && !a && this._enabled(!0, !1), this
			};
			var F = t("core.SimpleTimeline", function (a) {
				D.call(this, 0, a), this.autoRemoveChildren = this.smoothChildTiming = !0
			});
			h = F.prototype = new D, h.constructor = F, h.kill()._gc = !1, h._first = h._last = h._recent = null, h._sortChildren = !1, h.add = h.insert = function (a, b, c, d) {
				var e, f;
				if (a._startTime = Number(b || 0) + a._delay, a._paused && this !== a._timeline && (a._pauseTime = a._startTime + (this.rawTime() - a._startTime) / a._timeScale),
					a.timeline && a.timeline._remove(a, !0), a.timeline = a._timeline = this, a._gc && a._enabled(!0, !0), e = this._last, this._sortChildren)
					for (f = a._startTime; e && e._startTime > f;) e = e._prev;
				return e ? (a._next = e._next, e._next = a) : (a._next = this._first, this._first = a), a._next ? a._next._prev = a : this._last = a, a._prev = e, this._recent = a, this._timeline && this._uncache(!0), this
			}, h._remove = function (a, b) {
				return a.timeline === this && (b || a._enabled(!1, !0), a._prev ? a._prev._next = a._next : this._first === a && (this._first = a._next), a._next ? a._next._prev = a._prev : this._last === a && (this._last = a._prev), a._next = a._prev = a.timeline = null, a === this._recent && (this._recent = this._last), this._timeline && this._uncache(!0)), this
			}, h.render = function (a, b, c) {
				var d, e = this._first;
				for (this._totalTime = this._time = this._rawPrevTime = a; e;) d = e._next, (e._active || a >= e._startTime && !e._paused && !e._gc) && (e._reversed ? e.render((e._dirty ? e.totalDuration() : e._totalDuration) - (a - e._startTime) * e._timeScale, b, c) : e.render((a - e._startTime) * e._timeScale, b, c)), e = d
			}, h.rawTime = function () {
				return j || i.wake(), this._totalTime
			};
			var G = t("TweenLite", function (b, c, d) {
					if (D.call(this, c, d), this.render = G.prototype.render, null == b) throw "Cannot tween a null target.";
					this.target = b = "string" != typeof b ? b : G.selector(b) || b;
					var e, f, g, h = b.jquery || b.length && b !== a && b[0] && (b[0] === a || b[0].nodeType && b[0].style && !b.nodeType),
						i = this.vars.overwrite;
					if (this._overwrite = i = null == i ? V[G.defaultOverwrite] : "number" == typeof i ? i >> 0 : V[i], (h || b instanceof Array || b.push && p(b)) && "number" != typeof b[0])
						for (this._targets = g = n(b), this._propLookup = [], this._siblings = [], e = 0; e < g.length; e++) f = g[e], f ? "string" != typeof f ? f.length && f !== a && f[0] && (f[0] === a || f[0].nodeType && f[0].style && !f.nodeType) ? (g.splice(e--, 1), this._targets = g = g.concat(n(f))) : (this._siblings[e] = $(f, this, !1), 1 === i && this._siblings[e].length > 1 && aa(f, this, null, 1, this._siblings[e])) : (f = g[e--] = G.selector(f), "string" == typeof f && g.splice(e + 1, 1)) : g.splice(e--, 1);
					else this._propLookup = {}, this._siblings = $(b, this, !1), 1 === i && this._siblings.length > 1 && aa(b, this, null, 1, this._siblings);
					(this.vars.immediateRender || 0 === c && 0 === this._delay && this.vars.immediateRender !== !1) && (this._time = -m, this.render(Math.min(0, -this._delay)))
				}, !0),
				H = function (b) {
					return b && b.length && b !== a && b[0] && (b[0] === a || b[0].nodeType && b[0].style && !b.nodeType)
				},
				I = function (a, b) {
					var c, d = {};
					for (c in a) U[c] || c in b && "transform" !== c && "x" !== c && "y" !== c && "width" !== c && "height" !== c && "className" !== c && "border" !== c || !(!R[c] || R[c] && R[c]._autoCSS) || (d[c] = a[c], delete a[c]);
					a.css = d
				};
			h = G.prototype = new D, h.constructor = G, h.kill()._gc = !1, h.ratio = 0, h._firstPT = h._targets = h._overwrittenProps = h._startAt = null, h._notifyPluginsOfEnabled = h._lazy = !1, G.version = "1.20.2", G.defaultEase = h._ease = new v(null, null, 1, 1), G.defaultOverwrite = "auto", G.ticker = i, G.autoSleep = 120, G.lagSmoothing = function (a, b) {
				i.lagSmoothing(a, b)
			}, G.selector = a.$ || a.jQuery || function (b) {
				var c = a.$ || a.jQuery;
				return c ? (G.selector = c, c(b)) : "undefined" == typeof d ? b : d.querySelectorAll ? d.querySelectorAll(b) : d.getElementById("#" === b.charAt(0) ? b.substr(1) : b)
			};
			var J = [],
				K = {},
				L = /(?:(-|-=|\+=)?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/gi,
				M = /[\+-]=-?[\.\d]/,
				N = function (a) {
					for (var b, c = this._firstPT, d = 1e-6; c;) b = c.blob ? 1 === a && this.end ? this.end : a ? this.join("") : this.start : c.c * a + c.s, c.m ? b = c.m(b, this._target || c.t) : d > b && b > -d && !c.blob && (b = 0), c.f ? c.fp ? c.t[c.p](c.fp, b) : c.t[c.p](b) : c.t[c.p] = b, c = c._next
				},
				O = function (a, b, c, d) {
					var e, f, g, h, i, j, k, l = [],
						m = 0,
						n = "",
						o = 0;
					for (l.start = a, l.end = b, a = l[0] = a + "", b = l[1] = b + "", c && (c(l), a = l[0], b = l[1]), l.length = 0, e = a.match(L) || [], f = b.match(L) || [], d && (d._next = null, d.blob = 1, l._firstPT = l._applyPT = d), i = f.length, h = 0; i > h; h++) k = f[h], j = b.substr(m, b.indexOf(k, m) - m), n += j || !h ? j : ",", m += j.length, o ? o = (o + 1) % 5 : "rgba(" === j.substr(-5) && (o = 1), k === e[h] || e.length <= h ? n += k : (n && (l.push(n), n = ""), g = parseFloat(e[h]), l.push(g), l._firstPT = {
						_next: l._firstPT,
						t: l,
						p: l.length - 1,
						s: g,
						c: ("=" === k.charAt(1) ? parseInt(k.charAt(0) + "1", 10) * parseFloat(k.substr(2)) : parseFloat(k) - g) || 0,
						f: 0,
						m: o && 4 > o ? Math.round : 0
					}), m += k.length;
					return n += b.substr(m), n && l.push(n), l.setRatio = N, M.test(b) && (l.end = 0), l
				},
				P = function (a, b, c, d, e, f, g, h, i) {
					"function" == typeof d && (d = d(i || 0, a));
					var j, k = typeof a[b],
						l = "function" !== k ? "" : b.indexOf("set") || "function" != typeof a["get" + b.substr(3)] ? b : "get" + b.substr(3),
						m = "get" !== c ? c : l ? g ? a[l](g) : a[l]() : a[b],
						n = "string" == typeof d && "=" === d.charAt(1),
						o = {
							t: a,
							p: b,
							s: m,
							f: "function" === k,
							pg: 0,
							n: e || b,
							m: f ? "function" == typeof f ? f : Math.round : 0,
							pr: 0,
							c: n ? parseInt(d.charAt(0) + "1", 10) * parseFloat(d.substr(2)) : parseFloat(d) - m || 0
						};
					return ("number" != typeof m || "number" != typeof d && !n) && (g || isNaN(m) || !n && isNaN(d) || "boolean" == typeof m || "boolean" == typeof d ? (o.fp = g, j = O(m, n ? parseFloat(o.s) + o.c : d, h || G.defaultStringFilter, o), o = {
						t: j,
						p: "setRatio",
						s: 0,
						c: 1,
						f: 2,
						pg: 0,
						n: e || b,
						pr: 0,
						m: 0
					}) : (o.s = parseFloat(m), n || (o.c = parseFloat(d) - o.s || 0))), o.c ? ((o._next = this._firstPT) && (o._next._prev = o), this._firstPT = o, o) : void 0
				},
				Q = G._internals = {
					isArray: p,
					isSelector: H,
					lazyTweens: J,
					blobDif: O
				},
				R = G._plugins = {},
				S = Q.tweenLookup = {},
				T = 0,
				U = Q.reservedProps = {
					ease: 1,
					delay: 1,
					overwrite: 1,
					onComplete: 1,
					onCompleteParams: 1,
					onCompleteScope: 1,
					useFrames: 1,
					runBackwards: 1,
					startAt: 1,
					onUpdate: 1,
					onUpdateParams: 1,
					onUpdateScope: 1,
					onStart: 1,
					onStartParams: 1,
					onStartScope: 1,
					onReverseComplete: 1,
					onReverseCompleteParams: 1,
					onReverseCompleteScope: 1,
					onRepeat: 1,
					onRepeatParams: 1,
					onRepeatScope: 1,
					easeParams: 1,
					yoyo: 1,
					immediateRender: 1,
					repeat: 1,
					repeatDelay: 1,
					data: 1,
					paused: 1,
					reversed: 1,
					autoCSS: 1,
					lazy: 1,
					onOverwrite: 1,
					callbackScope: 1,
					stringFilter: 1,
					id: 1,
					yoyoEase: 1
				},
				V = {
					none: 0,
					all: 1,
					auto: 2,
					concurrent: 3,
					allOnStart: 4,
					preexisting: 5,
					"true": 1,
					"false": 0
				},
				W = D._rootFramesTimeline = new F,
				X = D._rootTimeline = new F,
				Y = 30,
				Z = Q.lazyRender = function () {
					var a, b = J.length;
					for (K = {}; --b > -1;) a = J[b], a && a._lazy !== !1 && (a.render(a._lazy[0], a._lazy[1], !0), a._lazy = !1);
					J.length = 0
				};
			X._startTime = i.time, W._startTime = i.frame, X._active = W._active = !0, setTimeout(Z, 1), D._updateRoot = G.render = function () {
				var a, b, c;
				if (J.length && Z(), X.render((i.time - X._startTime) * X._timeScale, !1, !1), W.render((i.frame - W._startTime) * W._timeScale, !1, !1), J.length && Z(), i.frame >= Y) {
					Y = i.frame + (parseInt(G.autoSleep, 10) || 120);
					for (c in S) {
						for (b = S[c].tweens, a = b.length; --a > -1;) b[a]._gc && b.splice(a, 1);
						0 === b.length && delete S[c]
					}
					if (c = X._first, (!c || c._paused) && G.autoSleep && !W._first && 1 === i._listeners.tick.length) {
						for (; c && c._paused;) c = c._next;
						c || i.sleep()
					}
				}
			}, i.addEventListener("tick", D._updateRoot);
			var $ = function (a, b, c) {
					var d, e, f = a._gsTweenID;
					if (S[f || (a._gsTweenID = f = "t" + T++)] || (S[f] = {
							target: a,
							tweens: []
						}), b && (d = S[f].tweens, d[e = d.length] = b, c))
						for (; --e > -1;) d[e] === b && d.splice(e, 1);
					return S[f].tweens
				},
				_ = function (a, b, c, d) {
					var e, f, g = a.vars.onOverwrite;
					return g && (e = g(a, b, c, d)), g = G.onOverwrite, g && (f = g(a, b, c, d)), e !== !1 && f !== !1
				},
				aa = function (a, b, c, d, e) {
					var f, g, h, i;
					if (1 === d || d >= 4) {
						for (i = e.length, f = 0; i > f; f++)
							if ((h = e[f]) !== b) h._gc || h._kill(null, a, b) && (g = !0);
							else if (5 === d) break;
						return g
					}
					var j, k = b._startTime + m,
						l = [],
						n = 0,
						o = 0 === b._duration;
					for (f = e.length; --f > -1;)(h = e[f]) === b || h._gc || h._paused || (h._timeline !== b._timeline ? (j = j || ba(b, 0, o), 0 === ba(h, j, o) && (l[n++] = h)) : h._startTime <= k && h._startTime + h.totalDuration() / h._timeScale > k && ((o || !h._initted) && k - h._startTime <= 2e-10 || (l[n++] = h)));
					for (f = n; --f > -1;)
						if (h = l[f], 2 === d && h._kill(c, a, b) && (g = !0), 2 !== d || !h._firstPT && h._initted) {
							if (2 !== d && !_(h, b)) continue;
							h._enabled(!1, !1) && (g = !0)
						}
					return g
				},
				ba = function (a, b, c) {
					for (var d = a._timeline, e = d._timeScale, f = a._startTime; d._timeline;) {
						if (f += d._startTime, e *= d._timeScale, d._paused) return -100;
						d = d._timeline
					}
					return f /= e, f > b ? f - b : c && f === b || !a._initted && 2 * m > f - b ? m : (f += a.totalDuration() / a._timeScale / e) > b + m ? 0 : f - b - m
				};
			h._init = function () {
				var a, b, c, d, e, f, g = this.vars,
					h = this._overwrittenProps,
					i = this._duration,
					j = !!g.immediateRender,
					k = g.ease;
				if (g.startAt) {
					this._startAt && (this._startAt.render(-1, !0), this._startAt.kill()), e = {};
					for (d in g.startAt) e[d] = g.startAt[d];
					if (e.overwrite = !1, e.immediateRender = !0, e.lazy = j && g.lazy !== !1, e.startAt = e.delay = null, e.onUpdate = g.onUpdate, e.onUpdateScope = g.onUpdateScope || g.callbackScope || this, this._startAt = G.to(this.target, 0, e), j)
						if (this._time > 0) this._startAt = null;
						else if (0 !== i) return
				} else if (g.runBackwards && 0 !== i)
					if (this._startAt) this._startAt.render(-1, !0), this._startAt.kill(), this._startAt = null;
					else {
						0 !== this._time && (j = !1), c = {};
						for (d in g) U[d] && "autoCSS" !== d || (c[d] = g[d]);
						if (c.overwrite = 0, c.data = "isFromStart", c.lazy = j && g.lazy !== !1, c.immediateRender = j, this._startAt = G.to(this.target, 0, c), j) {
							if (0 === this._time) return
						} else this._startAt._init(), this._startAt._enabled(!1), this.vars.immediateRender && (this._startAt = null)
					}
				if (this._ease = k = k ? k instanceof v ? k : "function" == typeof k ? new v(k, g.easeParams) : w[k] || G.defaultEase : G.defaultEase, g.easeParams instanceof Array && k.config && (this._ease = k.config.apply(k, g.easeParams)), this._easeType = this._ease._type, this._easePower = this._ease._power, this._firstPT = null, this._targets)
					for (f = this._targets.length, a = 0; f > a; a++) this._initProps(this._targets[a], this._propLookup[a] = {}, this._siblings[a], h ? h[a] : null, a) && (b = !0);
				else b = this._initProps(this.target, this._propLookup, this._siblings, h, 0);
				if (b && G._onPluginEvent("_onInitAllProps", this), h && (this._firstPT || "function" != typeof this.target && this._enabled(!1, !1)), g.runBackwards)
					for (c = this._firstPT; c;) c.s += c.c, c.c = -c.c, c = c._next;
				this._onUpdate = g.onUpdate, this._initted = !0
			}, h._initProps = function (b, c, d, e, f) {
				var g, h, i, j, k, l;
				if (null == b) return !1;
				K[b._gsTweenID] && Z(), this.vars.css || b.style && b !== a && b.nodeType && R.css && this.vars.autoCSS !== !1 && I(this.vars, b);
				for (g in this.vars)
					if (l = this.vars[g], U[g]) l && (l instanceof Array || l.push && p(l)) && -1 !== l.join("").indexOf("{self}") && (this.vars[g] = l = this._swapSelfInParams(l, this));
					else if (R[g] && (j = new R[g])._onInitTween(b, this.vars[g], this, f)) {
					for (this._firstPT = k = {
							_next: this._firstPT,
							t: j,
							p: "setRatio",
							s: 0,
							c: 1,
							f: 1,
							n: g,
							pg: 1,
							pr: j._priority,
							m: 0
						}, h = j._overwriteProps.length; --h > -1;) c[j._overwriteProps[h]] = this._firstPT;
					(j._priority || j._onInitAllProps) && (i = !0), (j._onDisable || j._onEnable) && (this._notifyPluginsOfEnabled = !0), k._next && (k._next._prev = k)
				} else c[g] = P.call(this, b, g, "get", l, g, 0, null, this.vars.stringFilter, f);
				return e && this._kill(e, b) ? this._initProps(b, c, d, e, f) : this._overwrite > 1 && this._firstPT && d.length > 1 && aa(b, this, c, this._overwrite, d) ? (this._kill(c, b), this._initProps(b, c, d, e, f)) : (this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration) && (K[b._gsTweenID] = !0), i)
			}, h.render = function (a, b, c) {
				var d, e, f, g, h = this._time,
					i = this._duration,
					j = this._rawPrevTime;
				if (a >= i - 1e-7 && a >= 0) this._totalTime = this._time = i, this.ratio = this._ease._calcEnd ? this._ease.getRatio(1) : 1, this._reversed || (d = !0, e = "onComplete", c = c || this._timeline.autoRemoveChildren), 0 === i && (this._initted || !this.vars.lazy || c) && (this._startTime === this._timeline._duration && (a = 0), (0 > j || 0 >= a && a >= -1e-7 || j === m && "isPause" !== this.data) && j !== a && (c = !0, j > m && (e = "onReverseComplete")), this._rawPrevTime = g = !b || a || j === a ? a : m);
				else if (1e-7 > a) this._totalTime = this._time = 0, this.ratio = this._ease._calcEnd ? this._ease.getRatio(0) : 0, (0 !== h || 0 === i && j > 0) && (e = "onReverseComplete", d = this._reversed), 0 > a && (this._active = !1, 0 === i && (this._initted || !this.vars.lazy || c) && (j >= 0 && (j !== m || "isPause" !== this.data) && (c = !0), this._rawPrevTime = g = !b || a || j === a ? a : m)), (!this._initted || this._startAt && this._startAt.progress()) && (c = !0);
				else if (this._totalTime = this._time = a, this._easeType) {
					var k = a / i,
						l = this._easeType,
						n = this._easePower;
					(1 === l || 3 === l && k >= .5) && (k = 1 - k), 3 === l && (k *= 2), 1 === n ? k *= k : 2 === n ? k *= k * k : 3 === n ? k *= k * k * k : 4 === n && (k *= k * k * k * k), 1 === l ? this.ratio = 1 - k : 2 === l ? this.ratio = k : .5 > a / i ? this.ratio = k / 2 : this.ratio = 1 - k / 2
				} else this.ratio = this._ease.getRatio(a / i);
				if (this._time !== h || c) {
					if (!this._initted) {
						if (this._init(), !this._initted || this._gc) return;
						if (!c && this._firstPT && (this.vars.lazy !== !1 && this._duration || this.vars.lazy && !this._duration)) return this._time = this._totalTime = h, this._rawPrevTime = j, J.push(this), void(this._lazy = [a, b]);
						this._time && !d ? this.ratio = this._ease.getRatio(this._time / i) : d && this._ease._calcEnd && (this.ratio = this._ease.getRatio(0 === this._time ? 0 : 1))
					}
					for (this._lazy !== !1 && (this._lazy = !1), this._active || !this._paused && this._time !== h && a >= 0 && (this._active = !0), 0 === h && (this._startAt && (a >= 0 ? this._startAt.render(a, b, c) : e || (e = "_dummyGS")), this.vars.onStart && (0 !== this._time || 0 === i) && (b || this._callback("onStart"))), f = this._firstPT; f;) f.f ? f.t[f.p](f.c * this.ratio + f.s) : f.t[f.p] = f.c * this.ratio + f.s, f = f._next;
					this._onUpdate && (0 > a && this._startAt && a !== -1e-4 && this._startAt.render(a, b, c), b || (this._time !== h || d || c) && this._callback("onUpdate")), e && (!this._gc || c) && (0 > a && this._startAt && !this._onUpdate && a !== -1e-4 && this._startAt.render(a, b, c), d && (this._timeline.autoRemoveChildren && this._enabled(!1, !1), this._active = !1), !b && this.vars[e] && this._callback(e), 0 === i && this._rawPrevTime === m && g !== m && (this._rawPrevTime = 0))
				}
			}, h._kill = function (a, b, c) {
				if ("all" === a && (a = null), null == a && (null == b || b === this.target)) return this._lazy = !1, this._enabled(!1, !1);
				b = "string" != typeof b ? b || this._targets || this.target : G.selector(b) || b;
				var d, e, f, g, h, i, j, k, l, m = c && this._time && c._startTime === this._startTime && this._timeline === c._timeline;
				if ((p(b) || H(b)) && "number" != typeof b[0])
					for (d = b.length; --d > -1;) this._kill(a, b[d], c) && (i = !0);
				else {
					if (this._targets) {
						for (d = this._targets.length; --d > -1;)
							if (b === this._targets[d]) {
								h = this._propLookup[d] || {}, this._overwrittenProps = this._overwrittenProps || [], e = this._overwrittenProps[d] = a ? this._overwrittenProps[d] || {} : "all";
								break
							}
					} else {
						if (b !== this.target) return !1;
						h = this._propLookup, e = this._overwrittenProps = a ? this._overwrittenProps || {} : "all"
					}
					if (h) {
						if (j = a || h, k = a !== e && "all" !== e && a !== h && ("object" != typeof a || !a._tempKill), c && (G.onOverwrite || this.vars.onOverwrite)) {
							for (f in j) h[f] && (l || (l = []), l.push(f));
							if ((l || !a) && !_(this, c, b, l)) return !1
						}
						for (f in j)(g = h[f]) && (m && (g.f ? g.t[g.p](g.s) : g.t[g.p] = g.s, i = !0), g.pg && g.t._kill(j) && (i = !0), g.pg && 0 !== g.t._overwriteProps.length || (g._prev ? g._prev._next = g._next : g === this._firstPT && (this._firstPT = g._next), g._next && (g._next._prev = g._prev), g._next = g._prev = null), delete h[f]), k && (e[f] = 1);
						!this._firstPT && this._initted && this._enabled(!1, !1)
					}
				}
				return i
			}, h.invalidate = function () {
				return this._notifyPluginsOfEnabled && G._onPluginEvent("_onDisable", this), this._firstPT = this._overwrittenProps = this._startAt = this._onUpdate = null, this._notifyPluginsOfEnabled = this._active = this._lazy = !1, this._propLookup = this._targets ? {} : [], D.prototype.invalidate.call(this), this.vars.immediateRender && (this._time = -m, this.render(Math.min(0, -this._delay))), this
			}, h._enabled = function (a, b) {
				if (j || i.wake(), a && this._gc) {
					var c, d = this._targets;
					if (d)
						for (c = d.length; --c > -1;) this._siblings[c] = $(d[c], this, !0);
					else this._siblings = $(this.target, this, !0)
				}
				return D.prototype._enabled.call(this, a, b), this._notifyPluginsOfEnabled && this._firstPT ? G._onPluginEvent(a ? "_onEnable" : "_onDisable", this) : !1
			}, G.to = function (a, b, c) {
				return new G(a, b, c)
			}, G.from = function (a, b, c) {
				return c.runBackwards = !0, c.immediateRender = 0 != c.immediateRender, new G(a, b, c)
			}, G.fromTo = function (a, b, c, d) {
				return d.startAt = c, d.immediateRender = 0 != d.immediateRender && 0 != c.immediateRender, new G(a, b, d)
			}, G.delayedCall = function (a, b, c, d, e) {
				return new G(b, 0, {
					delay: a,
					onComplete: b,
					onCompleteParams: c,
					callbackScope: d,
					onReverseComplete: b,
					onReverseCompleteParams: c,
					immediateRender: !1,
					lazy: !1,
					useFrames: e,
					overwrite: 0
				})
			}, G.set = function (a, b) {
				return new G(a, 0, b)
			}, G.getTweensOf = function (a, b) {
				if (null == a) return [];
				a = "string" != typeof a ? a : G.selector(a) || a;
				var c, d, e, f;
				if ((p(a) || H(a)) && "number" != typeof a[0]) {
					for (c = a.length, d = []; --c > -1;) d = d.concat(G.getTweensOf(a[c], b));
					for (c = d.length; --c > -1;)
						for (f = d[c], e = c; --e > -1;) f === d[e] && d.splice(c, 1)
				} else if (a._gsTweenID)
					for (d = $(a).concat(), c = d.length; --c > -1;)(d[c]._gc || b && !d[c].isActive()) && d.splice(c, 1);
				return d || []
			}, G.killTweensOf = G.killDelayedCallsTo = function (a, b, c) {
				"object" == typeof b && (c = b, b = !1);
				for (var d = G.getTweensOf(a, b), e = d.length; --e > -1;) d[e]._kill(c, a)
			};
			var ca = t("plugins.TweenPlugin", function (a, b) {
				this._overwriteProps = (a || "").split(","), this._propName = this._overwriteProps[0], this._priority = b || 0, this._super = ca.prototype
			}, !0);
			if (h = ca.prototype, ca.version = "1.19.0", ca.API = 2, h._firstPT = null, h._addTween = P, h.setRatio = N, h._kill = function (a) {
					var b, c = this._overwriteProps,
						d = this._firstPT;
					if (null != a[this._propName]) this._overwriteProps = [];
					else
						for (b = c.length; --b > -1;) null != a[c[b]] && c.splice(b, 1);
					for (; d;) null != a[d.n] && (d._next && (d._next._prev = d._prev), d._prev ? (d._prev._next = d._next, d._prev = null) : this._firstPT === d && (this._firstPT = d._next)), d = d._next;
					return !1
				}, h._mod = h._roundProps = function (a) {
					for (var b, c = this._firstPT; c;) b = a[this._propName] || null != c.n && a[c.n.split(this._propName + "_").join("")], b && "function" == typeof b && (2 === c.f ? c.t._applyPT.m = b : c.m = b), c = c._next
				}, G._onPluginEvent = function (a, b) {
					var c, d, e, f, g, h = b._firstPT;
					if ("_onInitAllProps" === a) {
						for (; h;) {
							for (g = h._next, d = e; d && d.pr > h.pr;) d = d._next;
							(h._prev = d ? d._prev : f) ? h._prev._next = h: e = h, (h._next = d) ? d._prev = h : f = h, h = g
						}
						h = b._firstPT = e
					}
					for (; h;) h.pg && "function" == typeof h.t[a] && h.t[a]() && (c = !0), h = h._next;
					return c
				}, ca.activate = function (a) {
					for (var b = a.length; --b > -1;) a[b].API === ca.API && (R[(new a[b])._propName] = a[b]);
					return !0
				}, s.plugin = function (a) {
					if (!(a && a.propName && a.init && a.API)) throw "illegal plugin definition.";
					var b, c = a.propName,
						d = a.priority || 0,
						e = a.overwriteProps,
						f = {
							init: "_onInitTween",
							set: "setRatio",
							kill: "_kill",
							round: "_mod",
							mod: "_mod",
							initAll: "_onInitAllProps"
						},
						g = t("plugins." + c.charAt(0).toUpperCase() + c.substr(1) + "Plugin", function () {
							ca.call(this, c, d), this._overwriteProps = e || []
						}, a.global === !0),
						h = g.prototype = new ca(c);
					h.constructor = g, g.API = a.API;
					for (b in f) "function" == typeof a[b] && (h[f[b]] = a[b]);
					return g.version = a.version, ca.activate([g]), g
				}, f = a._gsQueue) {
				for (g = 0; g < f.length; g++) f[g]();
				for (h in q) q[h].func || a.console.log("GSAP encountered missing dependency: " + h)
			}
			j = !1
		}
	}("undefined" != typeof module && module.exports && "undefined" != typeof global ? global : this || window, "TweenMax");

/*! PhotoSwipe - v4.0.0 - 2014-12-16
 * http://photoswipe.com
 * Copyright (c) 2014 Dmitry Semenov; */
(function (e, t) {
	"function" == typeof define && define.amd ? define(t) : "object" == typeof exports ? module.exports = t() : e.PhotoSwipe = t()
})(this, function () {
	"use strict";
	var e = function (e, t, n, i) {
		var o = {
			features: null,
			bind: function (e, t, n, i) {
				var o = (i ? "remove" : "add") + "EventListener";
				t = t.split(" ");
				for (var a = 0; t.length > a; a++) t[a] && e[o](t[a], n, !1)
			},
			isArray: function (e) {
				return e instanceof Array
			},
			createEl: function (e, t) {
				var n = document.createElement(t || "div");
				return e && (n.className = e), n
			},
			getScrollY: function () {
				var e = window.pageYOffset;
				return void 0 !== e ? e : document.documentElement.scrollTop
			},
			unbind: function (e, t, n) {
				o.bind(e, t, n, !0)
			},
			removeClass: function (e, t) {
				var n = RegExp("(\\s|^)" + t + "(\\s|$)");
				e.className = e.className.replace(n, " ").replace(/^\s\s*/, "").replace(/\s\s*$/, "")
			},
			addClass: function (e, t) {
				o.hasClass(e, t) || (e.className += (e.className ? " " : "") + t)
			},
			hasClass: function (e, t) {
				return e.className && RegExp("(^|\\s)" + t + "(\\s|$)").test(e.className)
			},
			arraySearch: function (e, t, n) {
				for (var i = e.length; i--;)
					if (e[i][n] === t) return i;
				return -1
			},
			extend: function (e, t, n) {
				for (var i in t)
					if (t.hasOwnProperty(i)) {
						if (n && e.hasOwnProperty(i)) continue;
						e[i] = t[i]
					}
			},
			easing: {
				sine: {
					out: function (e) {
						return Math.sin(e * (Math.PI / 2))
					},
					inOut: function (e) {
						return -(Math.cos(Math.PI * e) - 1) / 2
					}
				},
				cubic: {
					out: function (e) {
						return --e * e * e + 1
					}
				}
			},
			detectFeatures: function () {
				if (o.features) return o.features;
				var e = o.createEl(),
					t = e.style,
					n = "",
					i = {};
				if (i.oldIE = document.all && !document.addEventListener, i.touch = "ontouchstart" in window, window.requestAnimationFrame && (i.raf = window.requestAnimationFrame, i.caf = window.cancelAnimationFrame), i.pointerEvent = navigator.pointerEnabled || navigator.msPointerEnabled, !i.pointerEvent) {
					var a = navigator.userAgent;
					if (/iP(hone|od)/.test(navigator.platform)) {
						var r = navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);
						r && r.length > 0 && (r = parseInt(r[1], 10), r >= 1 && 8 > r && (i.isOldIOSPhone = !0))
					}
					var l = a.match(/Android\s([0-9\.]*)/),
						s = l ? l[1] : 0;
					s = parseFloat(s), s >= 1 && (4.4 > s && (i.isOldAndroid = !0), i.androidVersion = s), i.isMobileOpera = /opera mini|opera mobi/i.test(a)
				}
				for (var u, c, d = ["transform", "perspective", "animationName"], m = ["", "webkit", "Moz", "ms", "O"], p = 0; 4 > p; p++) {
					n = m[p];
					for (var f = 0; 3 > f; f++) u = d[f], c = n + (n ? u.charAt(0).toUpperCase() + u.slice(1) : u), !i[u] && c in t && (i[u] = c);
					n && !i.raf && (n = n.toLowerCase(), i.raf = window[n + "RequestAnimationFrame"], i.raf && (i.caf = window[n + "CancelAnimationFrame"] || window[n + "CancelRequestAnimationFrame"]))
				}
				if (!i.raf) {
					var h = 0;
					i.raf = function (e) {
						var t = (new Date).getTime(),
							n = Math.max(0, 16 - (t - h)),
							i = window.setTimeout(function () {
								e(t + n)
							}, n);
						return h = t + n, i
					}, i.caf = function (e) {
						clearTimeout(e)
					}
				}
				return i.svg = !!document.createElementNS && !!document.createElementNS("http://www.w3.org/2000/svg", "svg").createSVGRect, o.features = i, i
			}
		};
		o.detectFeatures(), o.features.oldIE && (o.bind = function (e, t, n, i) {
			t = t.split(" ");
			for (var o, a = (i ? "detach" : "attach") + "Event", r = function () {
					n.handleEvent.call(n)
				}, l = 0; t.length > l; l++)
				if (o = t[l])
					if ("object" == typeof n && n.handleEvent) {
						if (i) {
							if (!n["oldIE" + o]) return !1
						} else n["oldIE" + o] = r;
						e[a]("on" + o, n["oldIE" + o])
					} else e[a]("on" + o, n)
		});
		var a = this,
			r = 25,
			l = 3,
			s = {
				allowPanToNext: !0,
				spacing: .12,
				bgOpacity: 1,
				mouseUsed: !1,
				loop: !0,
				pinchToClose: !0,
				closeOnScroll: !0,
				closeOnVerticalDrag: !0,
				hideAnimationDuration: 333,
				showAnimationDuration: 333,
				showHideOpacity: !1,
				focus: !0,
				escKey: !0,
				arrowKeys: !0,
				mainScrollEndFriction: .35,
				panEndFriction: .35,
				scaleMode: "fit",
				modal: !0,
				alwaysFadeIn: !1
			};
		o.extend(s, i);
		var u, c, d, m, p, f, h, y, v, x, g, w, b, I, D, C, T, M, Z, S, A, k, O, E, R, F, P, L, z, N, _, U, H, Y, B, V, W, G, X, K, q, $, j, J, Q, et, tt, nt, it, ot, at, rt, lt, st, ut, ct, dt, mt, pt, ft, ht, yt, vt, xt, gt = function () {
				return {
					x: 0,
					y: 0
				}
			},
			wt = 0,
			bt = gt(),
			It = gt(),
			Dt = gt(),
			Ct = gt(),
			Tt = {},
			Mt = 0,
			Zt = 0,
			St = gt(),
			At = 0,
			kt = !0,
			Ot = [],
			Et = {},
			Rt = function (e, t) {
				o.extend(a, t.publicMethods), Ot.push(e)
			},
			Ft = function (e) {
				var t = vt();
				return e > t - 1 ? e - t : 0 > e ? t + e : e
			},
			Pt = {},
			Lt = function (e, t) {
				return Pt[e] || (Pt[e] = []), Pt[e].push(t)
			},
			zt = function (e) {
				var t = Pt[e];
				if (t) {
					var n = Array.prototype.slice.call(arguments);
					n.shift();
					for (var i = 0; t.length > i; i++) t[i].apply(a, n)
				}
			},
			Nt = function () {
				return (new Date).getTime()
			},
			_t = function (e) {
				ct = e, a.bg.style.opacity = e * s.bgOpacity
			},
			Ut = function (e, t, n, i) {
				e[k] = w + t + "px, " + n + "px" + b + " scale(" + i + ")"
			},
			Ht = function () {
				ot && Ut(ot, Dt.x, Dt.y, x)
			},
			Yt = function (e) {
				Ut(e.container.style, e.initialPosition.x, e.initialPosition.y, e.initialZoomLevel)
			},
			Bt = function (e, t) {
				t[k] = w + e + "px, 0px" + b
			},
			Vt = function (e, t) {
				if (!s.loop && t) {
					var n = m + (St.x * Mt - e) / St.x,
						i = Math.round(e - In.x);
					(0 > n && i > 0 || n >= vt() - 1 && 0 > i) && (e = In.x + i * s.mainScrollEndFriction)
				}
				In.x = e, Bt(e, p)
			},
			Wt = function (e) {
				return 1 / nt * e * g
			},
			Gt = function (e, t) {
				var n = Dn[e] - lt[e];
				return It[e] + bt[e] + n - n * (t / g)
			},
			Xt = function (e, t) {
				return e.x === t.x && e.y === t.y
			},
			Kt = function (e, t) {
				return r > Math.abs(e.x - t.x) && r > Math.abs(e.y - t.y)
			},
			qt = function (e, t) {
				e.x = t.x, e.y = t.y, t.id && (e.id = t.id)
			},
			$t = function () {
				o.bind(document, "keydown", a), s.mouseUsed || o.bind(document, "mousemove", Qt), o.bind(window, "resize scroll", a), zt("bindEvents")
			},
			jt = function () {
				o.unbind(window, "resize", a), o.unbind(window, "scroll", v.scroll), o.unbind(document, "keydown", a), o.unbind(document, "mousemove", Qt), X && o.unbind(window, h, a), zt("unbindEvents")
			},
			Jt = null,
			Qt = function () {
				Jt && (o.unbind(document, "mousemove", Qt), o.addClass(e, "pswp--has_mouse"), s.mouseUsed = !0, zt("mouseUsed")), Jt = setTimeout(function () {
					Jt = null
				}, 100)
			},
			en = function (e, t) {
				var n = Jn(a.currItem, Tt, e);
				return t && (it = n), n
			},
			tn = function (e, t, n, i) {
				return i === a.currItem.initialZoomLevel ? (n[e] = a.currItem.initialPosition[e], !0) : (n[e] = Gt(e, i), n[e] > t.min[e] ? (n[e] = t.min[e], !0) : n[e] < t.max[e] ? (n[e] = t.max[e], !0) : !1)
			},
			nn = {},
			on = 0,
			an = function (e) {
				nn[e] && (nn[e].raf && F(nn[e].raf), on--, delete nn[e])
			},
			rn = function (e) {
				nn[e] && an(e), nn[e] || (on++, nn[e] = {})
			},
			ln = function () {
				for (var e in nn) nn.hasOwnProperty(e) && an(e)
			},
			sn = function (e, t, n, i, o, a, r) {
				var l, s = Nt();
				rn(e);
				var u = function () {
					if (nn[e]) {
						if (l = Nt() - s, l >= i) return an(e), a(n), r && r(), void 0;
						a((n - t) * o(l / i) + t), nn[e].raf = R(u)
					}
				};
				u()
			},
			un = function (t, n, i, a) {
				U && clearTimeout(U), ht = !0, ft = !0;
				var r;
				t.initialLayout ? (r = t.initialLayout, t.initialLayout = null) : r = s.getThumbBoundsFn && s.getThumbBoundsFn(m);
				var l = function () {
						an("initialZoom"), i || (_t(1), n && (n.style.display = "block"), o.addClass(e, "pswp--animated-in"), zt("initialZoom" + (i ? "OutEnd" : "InEnd"))), a && a(), ht = !1
					},
					u = i ? s.hideAnimationDuration : s.showAnimationDuration;
				return r && void 0 !== r.x && u ? (t.miniImg && (t.miniImg.style.webkitBackfaceVisibility = "hidden"), i || (x = r.w / t.w, Dt.x = r.x, Dt.y = r.y - L, s.showHideOpacity && (e.style.opacity = .001, e.style.webkitBackfaceVisibility = "hidden"), Ht()), rn("initialZoom"), i && !d && o.removeClass(e, "pswp--animated-in"), U = setTimeout(function () {
					if (zt("initialZoom" + (i ? "Out" : "In")), i) {
						var n = r.w / t.w,
							a = {
								x: Dt.x,
								y: Dt.y
							},
							c = x,
							m = L,
							p = ct,
							f = function (t) {
								D && (m = o.getScrollY(), D = !1), 1 === t ? (x = n, Dt.x = r.x, Dt.y = r.y - m, d && l()) : (x = (n - c) * t + c, Dt.x = (r.x - a.x) * t + a.x, Dt.y = (r.y - m - a.y) * t + a.y), Ht(), s.showHideOpacity ? e.style.opacity = 1 - t : _t(p - t * p)
							};
						d ? sn("initialZoom", 0, 1, u, o.easing.cubic.out, f) : (f(1), U = setTimeout(l, u + 20))
					} else x = t.initialZoomLevel, qt(Dt, t.initialPosition), Ht(), _t(1), s.showHideOpacity ? e.style.opacity = 1 : _t(1), U = setTimeout(l, u + 20)
				}, i ? 25 : 90), !0) : (zt("initialZoom" + (i ? "Out" : "In")), x = t.initialZoomLevel, qt(Dt, t.initialPosition), Ht(), e.style.opacity = i ? 0 : 1, _t(1), l(), !1)
			},
			cn = {
				shout: zt,
				listen: Lt,
				viewportSize: Tt,
				options: s,
				isMainScrollAnimating: function () {
					return at
				},
				getZoomLevel: function () {
					return x
				},
				getCurrentIndex: function () {
					return m
				},
				isDragging: function () {
					return X
				},
				isZooming: function () {
					return et
				},
				applyZoomPan: function (e, t, n) {
					Dt.x = t, Dt.y = n, x = e, Ht()
				},
				init: function () {
					if (!u && !c) {
						var n;
						if (a.framework = o, a.template = e, a.bg = e.children[0], P = e.className, u = !0, _ = o.detectFeatures(), R = _.raf, F = _.caf, k = _.transform, z = _.oldIE, a.scrollWrap = e.children[1], a.container = a.scrollWrap.children[0], p = a.container.style, k) {
							var i = _.perspective && !E;
							w = "translate" + (i ? "3d(" : "("), b = _.perspective ? ", 0px)" : ")"
						} else k = "left", o.addClass(e, "pswp--ie"), Bt = function (e, t) {
							t.left = e + "px"
						}, Yt = function (e) {
							var t = e.container.style,
								n = e.fitRatio * e.w,
								i = e.fitRatio * e.h;
							t.width = n + "px", t.height = i + "px", t.left = e.initialPosition.x + "px", t.top = e.initialPosition.y + "px"
						}, Ht = function () {
							if (ot) {
								var e = ot,
									t = a.currItem,
									n = t.fitRatio * t.w,
									i = t.fitRatio * t.h;
								e.width = n + "px", e.height = i + "px", e.left = Dt.x + "px", e.top = Dt.y + "px"
							}
						};
						var r = function (e, t, n, i, o) {
							M = e + t, Z = e + n, S = e + i, A = o ? e + o : ""
						};
						for (a.itemHolders = C = [{
								el: a.container.children[0],
								wrap: 0,
								index: -1
							}, {
								el: a.container.children[1],
								wrap: 0,
								index: -1
							}, {
								el: a.container.children[2],
								wrap: 0,
								index: -1
							}], C[0].el.style.display = C[2].el.style.display = "none", O = _.pointerEvent, O && _.touch && (_.touch = !1), O ? navigator.pointerEnabled ? r("pointer", "down", "move", "up", "cancel") : r("MSPointer", "Down", "Move", "Up", "Cancel") : _.touch ? (r("touch", "start", "move", "end", "cancel"), E = !0) : r("mouse", "down", "move", "up"), h = Z + " " + S + " " + A, y = M, O && !E && (E = navigator.maxTouchPoints > 1 || navigator.msMaxTouchPoints > 1), a.likelyTouchDevice = E, (!_.animationName || !_.transform || _.isOldIOSPhone || _.isOldAndroid || _.isMobileOpera) && (s.showAnimationDuration = s.hideAnimationDuration = 0), n = 0; Ot.length > n; n++) a["init" + Ot[n]]();
						if (t) {
							var g = a.ui = new t(a, o);
							g.init()
						}
						E || (s.allowPanToNext = !1);
						var T;
						v = {
							resize: a.updateSize,
							scroll: function () {
								D = !0, s.closeOnScroll && u && (!a.likelyTouchDevice || s.mouseUsed) && Math.abs(o.getScrollY() - L) > 2 && (d = !0, a.close())
							},
							keydown: function (e) {
								T = "", s.escKey && 27 === e.keyCode ? T = "close" : s.arrowKeys && (37 === e.keyCode ? T = "prev" : 39 === e.keyCode && (T = "next")), T && (e.ctrlKey || e.altKey || e.shiftKey || e.metaKey || (e.preventDefault ? e.preventDefault() : e.returnValue = !1, a[T]()))
							}
						}, v[M] = Un, v[Z] = Hn, v[S] = Bn, A && (v[A] = v[S]), _.touch && (y += " mousedown", h += " mousemove mouseup", v.mousedown = v[M], v.mousemove = v[Z], v.mouseup = v[S]), zt("firstUpdate"), m = m || s.index || 0, (isNaN(m) || 0 > m || m >= vt()) && (m = 0), a.currItem = yt(m), (_.isOldIOSPhone || _.isOldAndroid) && (kt = !1), s.modal && (e.setAttribute("aria-hidden", "false"), kt ? e.style.position = "fixed" : (e.style.position = "absolute", e.style.top = o.getScrollY() + "px")), void 0 === N && (zt("initialLayout"), N = L = o.getScrollY());
						var U = "pswp--open ";
						for (s.mainClass && (U += s.mainClass + " "), s.showHideOpacity && (U += "pswp--animate_opacity "), U += E ? "pswp--touch" : "pswp--notouch", U += _.animationName ? " pswp--css_animation" : "", U += _.svg ? " pswp--svg" : "", o.addClass(e, U), a.updateSize(), f = -1, At = null, n = 0; l > n; n++) Bt((n + f) * St.x, C[n].el.style);
						z || o.bind(a.scrollWrap, y, a), Lt("initialZoomInEnd", function () {
							a.setContent(C[0], m - 1), a.setContent(C[2], m + 1), C[0].el.style.display = C[2].el.style.display = "block", s.focus && e.focus(), $t()
						}), a.setContent(C[1], m), a.updateCurrItem(), zt("afterInit"), kt || (I = setInterval(function () {
							on || X || et || x !== a.currItem.initialZoomLevel || a.updateSize()
						}, 1e3)), o.addClass(e, "pswp--visible")
					}
				},
				close: function () {
					u && (u = !1, c = !0, zt("close"), jt(), un(a.currItem, null, !0, a.destroy))
				},
				destroy: function () {
					zt("destroy"), U && clearTimeout(U), s.modal && (e.setAttribute("aria-hidden", "true"), e.className = P), I && clearInterval(I), o.unbind(a.scrollWrap, y, a), o.unbind(window, "scroll", a), Mn(), ln(), Pt = null
				},
				panTo: function (e, t, n) {
					n || (e > it.min.x ? e = it.min.x : it.max.x > e && (e = it.max.x), t > it.min.y ? t = it.min.y : it.max.y > t && (t = it.max.y)), Dt.x = e, Dt.y = t, Ht()
				},
				handleEvent: function (e) {
					e = e || window.event, v[e.type] && v[e.type](e)
				},
				goTo: function (e) {
					e = Ft(e);
					var t = e - m;
					At = t, m = e, a.currItem = yt(m), Mt -= t, Vt(St.x * Mt), ln(), at = !1, a.updateCurrItem()
				},
				next: function () {
					a.goTo(m + 1)
				},
				prev: function () {
					a.goTo(m - 1)
				},
				updateCurrZoomItem: function (e) {
					if (e && zt("beforeChange", 0), C[1].el.children.length) {
						var t = C[1].el.children[0];
						ot = o.hasClass(t, "pswp__zoom-wrap") ? t.style : null
					} else ot = null;
					it = a.currItem.bounds, g = x = a.currItem.initialZoomLevel, Dt.x = it.center.x, Dt.y = it.center.y, e && zt("afterChange")
				},
				invalidateCurrItems: function () {
					for (var e = 0; l > e; e++) C[e].item && (C[e].item.needsUpdate = !0)
				},
				updateCurrItem: function (e) {
					if (0 !== At) {
						var t, n = Math.abs(At);
						if (!(e && 2 > n)) {
							a.currItem = yt(m), zt("beforeChange", At), n >= l && (f += At + (At > 0 ? -l : l), n = l);
							for (var i = 0; n > i; i++) At > 0 ? (t = C.shift(), C[l - 1] = t, f++, Bt((f + 2) * St.x, t.el.style), a.setContent(t, m - n + i + 1 + 1)) : (t = C.pop(), C.unshift(t), f--, Bt(f * St.x, t.el.style), a.setContent(t, m + n - i - 1 - 1));
							if (ot && 1 === Math.abs(At)) {
								var o = yt(T);
								o.initialZoomLevel !== x && (Jn(o, Tt), Yt(o))
							}
							At = 0, a.updateCurrZoomItem(), T = m, zt("afterChange")
						}
					}
				},
				updateSize: function (t) {
					if (!kt) {
						var n = o.getScrollY();
						if (N !== n && (e.style.top = n + "px", N = n), !t && Et.x === window.innerWidth && Et.y === window.innerHeight) return;
						Et.x = window.innerWidth, Et.y = window.innerHeight, e.style.height = Et.y + "px"
					}
					if (Tt.x = a.scrollWrap.clientWidth, Tt.y = a.scrollWrap.clientHeight, lt = {
							x: 0,
							y: N
						}, St.x = Tt.x + Math.round(Tt.x * s.spacing), St.y = Tt.y, Vt(St.x * Mt), zt("beforeResize"), void 0 !== f)
						for (var i, r, u = 0; l > u; u++) i = C[u], Bt((u + f) * St.x, i.el.style), r = yt(i.index), r.needsUpdate && (a.cleanSlide(r), a.setContent(i, i.index), 1 === u && a.updateCurrZoomItem(!0), r.needsUpdate = !1), r && r.container && (Jn(r, Tt), Yt(r));
					g = x = a.currItem.initialZoomLevel, it = a.currItem.bounds, it && (Dt.x = it.center.x, Dt.y = it.center.y, Ht()), zt("resize")
				},
				zoomTo: function (e, t, n, i, a) {
					t && (g = x, Dn.x = Math.abs(t.x) - Dt.x, Dn.y = Math.abs(t.y) - Dt.y, qt(It, Dt));
					var r = en(e, !1),
						l = {};
					tn("x", r, l, e), tn("y", r, l, e);
					var s = x,
						u = {
							x: Dt.x,
							y: Dt.y
						},
						c = function (t) {
							1 === t ? (x = e, Dt.x = l.x, Dt.y = l.y) : (x = (e - s) * t + s, Dt.x = (l.x - u.x) * t + u.x, Dt.y = (l.y - u.y) * t + u.y), a && a(t), Ht()
						};
					n ? sn("customZoomTo", 0, 1, n, i || o.easing.sine.inOut, c) : c(1)
				}
			},
			dn = 30,
			mn = 10,
			pn = {},
			fn = {},
			hn = {},
			yn = {},
			vn = {},
			xn = [],
			gn = {},
			wn = [],
			bn = {},
			In = gt(),
			Dn = gt(),
			Cn = gt(),
			Tn = function (e, t) {
				return bn.x = Math.abs(e.x - t.x), bn.y = Math.abs(e.y - t.y), Math.sqrt(bn.x * bn.x + bn.y * bn.y)
			},
			Mn = function () {
				j && (F(j), j = null)
			},
			Zn = function () {
				X && (j = R(Zn), Yn())
			},
			Sn = function () {
				return !("fit" === s.scaleMode && x === a.currItem.initialZoomLevel)
			},
			An = {},
			kn = function (e, t) {
				return An.prevent = "A" !== e.target.tagName, zt("preventDragEvent", e, t, An), An.prevent
			},
			On = function (e, t) {
				return t.x = e.pageX, t.y = e.pageY, t.id = e.identifier, t
			},
			En = function (e, t, n) {
				n.x = .5 * (e.x + t.x), n.y = .5 * (e.y + t.y)
			},
			Rn = function (e, t, n) {
				if (e - Y > 50) {
					var i = wn.length > 2 ? wn.shift() : {};
					i.x = t, i.y = n, wn.push(i), Y = e
				}
			},
			Fn = function () {
				var e = Dt.y - a.currItem.initialPosition.y;
				return 1 - Math.abs(e / (Tt.y / 2))
			},
			Pn = {},
			Ln = {},
			zn = [],
			Nn = function (e) {
				for (; zn.length > 0;) zn.pop();
				return O ? (mt = 0, xn.forEach(function (e) {
					0 === mt ? zn[0] = e : 1 === mt && (zn[1] = e), mt++
				})) : e.type.indexOf("touch") > -1 ? e.touches && e.touches.length > 0 && (zn[0] = On(e.touches[0], Pn), e.touches.length > 1 && (zn[1] = On(e.touches[1], Ln))) : (Pn.x = e.pageX, Pn.y = e.pageY, Pn.id = "", zn[0] = Pn), zn
			},
			_n = function (e, t) {
				var n, i, o = 0,
					r = Dt[e] + t[e],
					l = t[e] > 0,
					u = In.x + t.x,
					c = In.x - gn.x;
				n = r > it.min[e] || it.max[e] > r ? s.panEndFriction : 1, r = Dt[e] + t[e] * n;
				var d, m;
				return !s.allowPanToNext && x !== a.currItem.initialZoomLevel || (ot ? "h" !== rt || "x" !== e || q || (l ? (r > it.min[e] && (n = s.panEndFriction, o = it.min[e] - r, i = it.min[e] - It[e]), (0 >= i || 0 > c) && vt() > 1 ? (m = u, 0 > c && u > gn.x && (m = gn.x)) : it.min.x !== it.max.x && (d = r)) : (it.max[e] > r && (n = s.panEndFriction, o = r - it.max[e], i = It[e] - it.max[e]), (0 >= i || c > 0) && vt() > 1 ? (m = u, c > 0 && gn.x > u && (m = gn.x)) : it.min.x !== it.max.x && (d = r))) : m = u, "x" !== e) ? (at || J || x > a.currItem.fitRatio && (Dt[e] += t[e] * n), void 0) : (void 0 !== m && (Vt(m, !0), J = m === gn.x ? !1 : !0), it.min.x !== it.max.x && (void 0 !== d ? Dt.x = d : J || (Dt.x += t.x * n)), void 0 !== m)
			},
			Un = function (e) {
				if (ht) return e.preventDefault(), void 0;
				if (!G || "mousedown" !== e.type) {
					if (kn(e, !0) && e.preventDefault(), zt("pointerDown"), O) {
						var t = o.arraySearch(xn, e.pointerId, "id");
						0 > t && (t = xn.length), xn[t] = {
							x: e.pageX,
							y: e.pageY,
							id: e.pointerId
						}
					}
					var n = Nn(e),
						i = n.length;
					Q = null, ln(), X && 1 !== i || (X = st = !0, o.bind(window, h, a), V = dt = ut = W = J = $ = K = q = !1, rt = null, zt("firstTouchStart", n), qt(It, Dt), bt.x = bt.y = 0, qt(yn, n[0]), qt(vn, yn), gn.x = St.x * Mt, wn = [{
						x: yn.x,
						y: yn.y
					}], Y = H = Nt(), en(x, !0), Mn(), Zn()), !et && i > 1 && !at && !J && (g = x, q = !1, et = K = !0, bt.y = bt.x = 0, qt(It, Dt), qt(pn, n[0]), qt(fn, n[1]), En(pn, fn, Cn), Dn.x = Math.abs(Cn.x) - Dt.x, Dn.y = Math.abs(Cn.y) - Dt.y, tt = nt = Tn(pn, fn))
				}
			},
			Hn = function (e) {
				if (e.preventDefault(), O) {
					var t = o.arraySearch(xn, e.pointerId, "id");
					if (t > -1) {
						var n = xn[t];
						n.x = e.pageX, n.y = e.pageY
					}
				}
				if (X) {
					var i = Nn(e);
					if (rt || $ || et) Q = i;
					else {
						var a = Math.abs(i[0].x - yn.x) - Math.abs(i[0].y - yn.y);
						Math.abs(a) >= mn && (rt = a > 0 ? "h" : "v", Q = i)
					}
				}
			},
			Yn = function () {
				if (Q) {
					var e = Q.length;
					if (0 !== e)
						if (qt(pn, Q[0]), hn.x = pn.x - yn.x, hn.y = pn.y - yn.y, et && e > 1) {
							if (yn.x = pn.x, yn.y = pn.y, !hn.x && !hn.y && Xt(Q[1], fn)) return;
							qt(fn, Q[1]), q || (q = !0, zt("zoomGestureStarted"));
							var t = Tn(pn, fn),
								n = Wt(t);
							n > a.currItem.initialZoomLevel + a.currItem.initialZoomLevel / 15 && (dt = !0);
							var i = 1;
							if (a.currItem.minZoom > n)
								if (s.pinchToClose && !dt && a.currItem.initialZoomLevel >= g) {
									var o = a.currItem.minZoom - n,
										r = 1 - o / (a.currItem.minZoom / 1.2);
									_t(r), zt("onPinchClose", r), ut = !0
								} else i = (a.currItem.minZoom - n) / a.currItem.minZoom, i > 1 && (i = 1), n = a.currItem.minZoom - i * (a.currItem.minZoom / 3);
							else n > a.currItem.maxZoom && (i = (n - a.currItem.maxZoom) / (6 * a.currItem.minZoom), i > 1 && (i = 1), n = a.currItem.maxZoom + i * a.currItem.minZoom);
							1 !== i && 0 > i && (i = 0), tt = t, En(pn, fn, Ct), bt.x += Ct.x - Cn.x, bt.y += Ct.y - Cn.y, qt(Cn, Ct), Dt.x = Gt("x", n), Dt.y = Gt("y", n), V = n > x, x = n, Ht()
						} else {
							if (!rt) return;
							if (st && (st = !1, Math.abs(hn.x) >= mn && (hn.x -= Q[0].x - vn.x), Math.abs(hn.y) >= mn && (hn.y -= Q[0].y - vn.y)), yn.x = pn.x, yn.y = pn.y, 0 === hn.x && 0 === hn.y) return;
							if ("v" === rt && s.closeOnVerticalDrag && !Sn()) {
								bt.y += hn.y, Dt.y += hn.y;
								var l = Fn();
								return W = !0, zt("onVerticalDrag", l), _t(l), Ht(), void 0
							}
							Rn(Nt(), pn.x, pn.y), $ = !0, it = a.currItem.bounds;
							var u = _n("x", hn);
							u || _n("y", hn), Ht()
						}
				}
			},
			Bn = function (e) {
				if (_.isOldAndroid) {
					if (G && "mouseup" === e.type) return;
					e.type.indexOf("touch") > -1 && (clearTimeout(G), G = setTimeout(function () {
						G = 0
					}, 600))
				}
				zt("pointerUp"), kn(e, !1) && e.preventDefault();
				var t;
				if (O) {
					var n = o.arraySearch(xn, e.pointerId, "id");
					if (n > -1)
						if (t = xn.splice(n, 1)[0], navigator.pointerEnabled) t.type = e.pointerType || "mouse";
						else {
							var i = {
								4: "mouse",
								2: "touch",
								3: "pen"
							};
							t.type = i[e.pointerType], t.type || (t.type = e.pointerType || "mouse")
						}
				}
				var r, l = Nn(e),
					s = l.length;
				if ("mouseup" === e.type && (s = 0), 2 === s) return Q = null, !0;
				1 === s && qt(vn, l[0]), 0 !== s || rt || at || (t || ("mouseup" === e.type ? t = {
					x: e.pageX,
					y: e.pageY,
					type: "mouse"
				} : e.changedTouches && e.changedTouches[0] && (t = {
					x: e.changedTouches[0].pageX,
					y: e.changedTouches[0].pageY,
					type: "touch"
				})), zt("touchRelease", e, t));
				var u = -1;
				if (0 === s && (X = !1, o.unbind(window, h, a), Mn(), et ? u = 0 : -1 !== wt && (u = Nt() - wt)), wt = 1 === s ? Nt() : -1, r = -1 !== u && 150 > u ? "zoom" : "swipe", et && 2 > s && (et = !1, 1 === s && (r = "zoomPointerUp"), zt("zoomGestureEnded")), Q = null, $ || q || at || W)
					if (ln(), B || (B = Vn()), B.calculateSwipeSpeed("x"), W) {
						var c = Fn();
						if (.6 > c) a.close();
						else {
							var d = Dt.y,
								m = ct;
							sn("verticalDrag", 0, 1, 300, o.easing.cubic.out, function (e) {
								Dt.y = (a.currItem.initialPosition.y - d) * e + d, _t((1 - m) * e + m), Ht()
							}), zt("onVerticalDrag", 1)
						}
					} else {
						if ((J || at) && 0 === s) {
							var p = Gn(r, B);
							if (p) return;
							r = "zoomPointerUp"
						}
						if (!at) return "swipe" !== r ? (Xn(), void 0) : (!J && x > a.currItem.fitRatio && Wn(B), void 0)
					}
			},
			Vn = function () {
				var e, t, n = {
					lastFlickOffset: {},
					lastFlickDist: {},
					lastFlickSpeed: {},
					slowDownRatio: {},
					slowDownRatioReverse: {},
					speedDecelerationRatio: {},
					speedDecelerationRatioAbs: {},
					distanceOffset: {},
					backAnimDestination: {},
					backAnimStarted: {},
					calculateSwipeSpeed: function (i) {
						wn.length > 1 ? (e = Nt() - Y + 50, t = wn[wn.length - 2][i]) : (e = Nt() - H, t = vn[i]), n.lastFlickOffset[i] = yn[i] - t, n.lastFlickDist[i] = Math.abs(n.lastFlickOffset[i]), n.lastFlickSpeed[i] = n.lastFlickDist[i] > 20 ? n.lastFlickOffset[i] / e : 0, .1 > Math.abs(n.lastFlickSpeed[i]) && (n.lastFlickSpeed[i] = 0), n.slowDownRatio[i] = .95, n.slowDownRatioReverse[i] = 1 - n.slowDownRatio[i], n.speedDecelerationRatio[i] = 1
					},
					calculateOverBoundsAnimOffset: function (e, t) {
						n.backAnimStarted[e] || (Dt[e] > it.min[e] ? n.backAnimDestination[e] = it.min[e] : Dt[e] < it.max[e] && (n.backAnimDestination[e] = it.max[e]), void 0 !== n.backAnimDestination[e] && (n.slowDownRatio[e] = .7, n.slowDownRatioReverse[e] = 1 - n.slowDownRatio[e], .05 > n.speedDecelerationRatioAbs[e] && (n.lastFlickSpeed[e] = 0, n.backAnimStarted[e] = !0, sn("bounceZoomPan" + e, Dt[e], n.backAnimDestination[e], t || 300, o.easing.sine.out, function (t) {
							Dt[e] = t, Ht()
						}))))
					},
					calculateAnimOffset: function (e) {
						n.backAnimStarted[e] || (n.speedDecelerationRatio[e] = n.speedDecelerationRatio[e] * (n.slowDownRatio[e] + n.slowDownRatioReverse[e] - n.slowDownRatioReverse[e] * n.timeDiff / 10), n.speedDecelerationRatioAbs[e] = Math.abs(n.lastFlickSpeed[e] * n.speedDecelerationRatio[e]), n.distanceOffset[e] = n.lastFlickSpeed[e] * n.speedDecelerationRatio[e] * n.timeDiff, Dt[e] += n.distanceOffset[e])
					},
					panAnimLoop: function () {
						return nn.zoomPan && (nn.zoomPan.raf = R(n.panAnimLoop), n.now = Nt(), n.timeDiff = n.now - n.lastNow, n.lastNow = n.now, n.calculateAnimOffset("x"), n.calculateAnimOffset("y"), Ht(), n.calculateOverBoundsAnimOffset("x"), n.calculateOverBoundsAnimOffset("y"), .05 > n.speedDecelerationRatioAbs.x && .05 > n.speedDecelerationRatioAbs.y) ? (an("zoomPan"), void 0) : void 0
					}
				};
				return n
			},
			Wn = function (e) {
				return e.calculateSwipeSpeed("y"), it = a.currItem.bounds, e.backAnimDestination = {}, e.backAnimStarted = {}, .05 >= Math.abs(e.lastFlickSpeed.x) && .05 >= Math.abs(e.lastFlickSpeed.y) ? (e.speedDecelerationRatioAbs.x = e.speedDecelerationRatioAbs.y = 0, e.calculateOverBoundsAnimOffset("x"), e.calculateOverBoundsAnimOffset("y"), !0) : (rn("zoomPan"), e.lastNow = Nt(), e.panAnimLoop(), void 0)
			},
			Gn = function (e, t) {
				var n;
				at || (Zt = m);
				var i;
				if ("swipe" === e) {
					var r = yn.x - vn.x;
					r > dn && (10 > t.lastFlickDist.x || t.lastFlickOffset.x > 20) ? i = -1 : -dn > r && (10 > t.lastFlickDist.x || -20 > t.lastFlickOffset.x) && (i = 1)
				}
				var l;
				i && (m += i, 0 > m ? (m = s.loop ? vt() - 1 : 0, l = !0) : m >= vt() && (m = s.loop ? 0 : vt() - 1, l = !0), (!l || s.loop) && (At += i, Mt -= i, n = !0));
				var u, c = St.x * Mt,
					d = Math.abs(c - In.x);
				return n || c > In.x == t.lastFlickSpeed.x > 0 ? (u = Math.abs(t.lastFlickSpeed.x) > 0 ? d / Math.abs(t.lastFlickSpeed.x) : 333, u = Math.min(u, 400), u = Math.max(u, 250)) : u = 333, Zt === m && (n = !1), at = !0, sn("mainScroll", In.x, c, u, o.easing.cubic.out, Vt, function () {
					ln(), at = !1, Zt = -1, (n || Zt !== m) && a.updateCurrItem(), zt("mainScrollAnimComplete")
				}), n && a.updateCurrItem(!0), n
			},
			Xn = function () {
				var e = x;
				a.currItem.minZoom > x ? e = a.currItem.minZoom : x > a.currItem.maxZoom && (e = a.currItem.maxZoom);
				var t, n = 1,
					i = ct;
				return ut && !V && !dt && a.currItem.minZoom > x ? (d = !0, a.close(), !0) : (ut && (t = function (e) {
					_t((n - i) * e + i)
				}), a.zoomTo(e, 0, 300, o.easing.cubic.out, t), !0)
			},
			Kn = {},
			qn = {},
			$n = [],
			jn = {
				index: 0,
				errorMsg: '<div class="pswp__error-msg"><a href="%url%" target="_blank">The image</a> could not be loaded.</div>',
				forceProgressiveLoading: !1,
				preload: [1, 1],
				getNumItemsFn: function () {
					return pt.length
				}
			},
			Jn = function (e, t, n) {
				if (e.src) {
					var i = !n;
					if (i && (e.vGap || (e.vGap = {
							top: 0,
							bottom: 0
						}), zt("parseVerticalMargin", e)), Kn.x = t.x, Kn.y = t.y - e.vGap.top - e.vGap.bottom, i) {
						var o = Kn.x / e.w,
							a = Kn.y / e.h;
						e.fitRatio = a > o ? o : a, e.fillRatio = o > a ? o : a;
						var r = s.scaleMode;
						"orig" === r ? n = 1 : "fit" === r ? n = e.fitRatio : "fill" === r && (n = e.fillRatio), n > 1 && (n = 1), e.initialZoomLevel = n, e.maxZoom = 2, e.doubleTapZoom = 2 * n > 1 ? 2 * n : 1, e.minZoom = n, e.bounds || (e.bounds = {
							center: {},
							max: {},
							min: {}
						})
					}
					if (!n) return;
					qn.x = e.w * n, qn.y = e.h * n;
					var l = e.bounds;
					return l.center.x = Math.round((Kn.x - qn.x) / 2), l.center.y = Math.round((Kn.y - qn.y) / 2) + e.vGap.top, l.max.x = qn.x > Kn.x ? Math.round(Kn.x - qn.x) : l.center.x, l.max.y = qn.y > Kn.y ? Math.round(Kn.y - qn.y) + e.vGap.top : l.center.y, l.min.x = qn.x > Kn.x ? 0 : l.center.x, l.min.y = qn.y > Kn.y ? e.vGap.top : l.center.y, i && n === e.initialZoomLevel && (e.initialPosition = l.center), l
				}
				return !1
			},
			Qn = function (e, t, n, i, o, r) {
				var l;
				!o && (E || s.alwaysFadeIn) && (e === m || a.isMainScrollAnimating() || a.isDragging() && !a.isZooming()) && (l = !0), i && (l && (i.style.opacity = 0), t.imageAppended = !0, n.appendChild(i), l && setTimeout(function () {
					i.style.opacity = 1, r && setTimeout(function () {
						t && t.loaded && t.placeholder && (t.placeholder.style.display = "none", t.placeholder = null)
					}, 500)
				}, 50))
			},
			ei = function (e) {
				e.loading = !0, e.loaded = !1;
				var t = e.img = o.createEl("pswp__img", "img"),
					n = function () {
						e.loading = !1, e.loaded = !0, e.loadComplete ? e.loadComplete(e) : e.img = null, t.onload = t.onerror = null, t = null
					};
				return t.onload = n, t.onerror = function () {
					e.loadError = !0, n()
				}, t.src = e.src, t
			},
			ti = function (e, t) {
				return e.loadError ? (t.el.innerHTML = s.errorMsg.replace("%url%", e.src), !0) : void 0
			},
			ni = function () {
				if ($n.length) {
					for (var e, t = 0; $n.length > t; t++) e = $n[t], e.holder.index === e.index && Qn(e.index, e.item, e.baseDiv, e.img);
					$n = []
				}
			};
		Rt("Controller", {
			publicMethods: {
				lazyLoadItem: function (e) {
					e = Ft(e);
					var t = yt(e);
					!t || t.loaded || t.loading || (zt("gettingData", e, t), ei(t))
				},
				initController: function () {
					o.extend(s, jn, !0), a.items = pt = n, yt = a.getItemAt, vt = s.getNumItemsFn, xt = s.loop, 3 > vt() && (s.loop = !1), Lt("beforeChange", function (e) {
						var t, n = s.preload,
							i = null === e ? !0 : e > 0,
							o = Math.min(n[0], vt()),
							r = Math.min(n[1], vt());
						for (t = 1;
							(i ? r : o) >= t; t++) a.lazyLoadItem(m + t);
						for (t = 1;
							(i ? o : r) >= t; t++) a.lazyLoadItem(m - t)
					}), Lt("initialLayout", function () {
						a.currItem.initialLayout = s.getThumbBoundsFn && s.getThumbBoundsFn(m)
					}), Lt("mainScrollAnimComplete", ni), Lt("initialZoomInEnd", ni), Lt("destroy", function () {
						for (var e, t = 0; pt.length > t; t++) e = pt[t], e.container && (e.container = null), e.placeholder && (e.placeholder = null), e.img && (e.img = null), e.preloader && (e.preloader = null), e.loadError && (e.loaded = e.loadError = !1);
						$n = null
					})
				},
				getItemAt: function (e) {
					return e >= 0 ? void 0 !== pt[e] ? pt[e] : !1 : !1
				},
				allowProgressiveImg: function () {
					return s.forceProgressiveLoading || !E || s.mouseUsed || screen.width > 1200
				},
				setContent: function (e, t) {
					s.loop && (t = Ft(t));
					var n = a.getItemAt(e.index);
					n && (n.container = null);
					var i, r = a.getItemAt(t);
					if (r) {
						if (zt("gettingData", t, r), e.index = t, e.item = r, ti(r, e)) return r.initialPosition.x = r.initialPosition.y = 0, r.initialZoomLevel = r.maxZoom = r.minZoom = 1, ot = null, r.w = 50, r.h = 50, Yt(r), void 0;
						var l = r.container = o.createEl("pswp__zoom-wrap");
						if (r.loaded) i = o.createEl("pswp__img", "img"), i.style.webkitBackfaceVisibility = "hidden", i.style.opacity = 1, i.src = r.src, Qn(t, r, l, i, !0);
						else {
							if (r.loadComplete = function (n) {
									if (u) {
										if (n.img.style.webkitBackfaceVisibility = "hidden", e.index === t) {
											if (ti(n, e)) return n.img = null, void 0;
											n.imageAppended ? !ht && n.placeholder && (n.placeholder.style.display = "none", n.placeholder = null) : at || ht ? $n.push({
												item: n,
												baseDiv: l,
												img: n.img,
												index: t,
												holder: e
											}) : Qn(t, n, l, n.img, at || ht)
										}
										n.loadComplete = null, n.img = null, zt("imageLoadComplete", t, n)
									}
								}, o.features.transform) {
								var c = o.createEl("pswp__img pswp__img--placeholder" + (r.msrc ? "" : " pswp__img--placeholder--blank"), r.msrc ? "img" : "");
								r.msrc && (c.src = r.msrc), c.style.width = r.w + "px", c.style.height = r.h + "px", l.appendChild(c), r.placeholder = c
							}
							r.loading || ei(r), a.allowProgressiveImg() && (ft ? Qn(t, r, l, r.img, !0, !0) : $n.push({
								item: r,
								baseDiv: l,
								img: r.img,
								index: t,
								holder: e
							}))
						}
						Jn(r, Tt), ft || t !== m ? Yt(r) : (ot = l.style, un(r, i || r.img)), e.el.innerHTML = "", e.el.appendChild(l)
					} else e.el.innerHTML = ""
				},
				cleanSlide: function (e) {
					e.img && (e.img.onload = e.img.onerror = null), e.loaded = e.loading = e.img = e.imageAppended = !1
				}
			}
		});
		var ii, oi = {},
			ai = function (e, t, n) {
				var i = document.createEvent("CustomEvent");
				i.initCustomEvent("pswpTap", !0, !0, {
					origEvent: e,
					target: e.target,
					releasePoint: t,
					pointerType: n || "touch"
				}), e.target.dispatchEvent(i)
			};
		Rt("Tap", {
			publicMethods: {
				initTap: function () {
					Lt("firstTouchStart", a.onTapStart), Lt("touchRelease", a.onTapRelease), Lt("destroy", function () {
						oi = {}, ii = null
					})
				},
				onTapStart: function (e) {
					e.length > 1 && (clearTimeout(ii), ii = null)
				},
				onTapRelease: function (e, t) {
					if (t && !$ && !K && !on) {
						var n = t;
						if (ii && (clearTimeout(ii), ii = null, Kt(n, oi))) return zt("doubleTap", n), void 0;
						var i = e.target.tagName.toLowerCase();
						if ("mouse" === t.type) return ai(e, t, "mouse"), void 0;
						if ("button" === i || o.hasClass(e.target, "pswp__single-tap")) return ai(e, t), void 0;
						qt(oi, n), ii = setTimeout(function () {
							ai(e, t), ii = null
						}, 300)
					}
				}
			}
		});
		var ri;
		Rt("DesktopZoom", {
			publicMethods: {
				handleMouseWheel: function (e) {
					if (a.currItem.fitRatio >= x) return !0;
					if (e.preventDefault(), e.stopPropagation(), ri.x = 0, "deltaX" in e) ri.x = e.deltaX, ri.y = e.deltaY;
					else if ("wheelDelta" in e) e.wheelDeltaX && (ri.x = -.16 * e.wheelDeltaX), ri.y = e.wheelDeltaY ? -.16 * e.wheelDeltaY : -.16 * e.wheelDelta;
					else {
						if (!("detail" in e)) return;
						ri.y = e.detail
					}
					en(x, !0), a.panTo(Dt.x - ri.x, Dt.y - ri.y)
				},
				toggleDesktopZoom: function (t) {
					t = t || {
						x: Tt.x / 2,
						y: Tt.y / 2 + L
					};
					var n = 1 === x;
					a.mouseZoomedIn = !n, a.zoomTo(n ? a.currItem.initialZoomLevel : 1, t, 333), o[(n ? "remove" : "add") + "Class"](e, "pswp--zoomed-in")
				},
				setupDesktopZoom: function (t) {
					ri = {};
					var n = "wheel mousewheel DOMMouseScroll";
					Lt("bindEvents", function () {
						o.bind(e, n, a.handleMouseWheel)
					}), Lt("unbindEvents", function () {
						ri && o.unbind(e, n, a.handleMouseWheel)
					}), a.mouseZoomedIn = !1;
					var i, r = function () {
							a.mouseZoomedIn && (o.removeClass(e, "pswp--zoomed-in"), a.mouseZoomedIn = !1), 1 > x ? o.addClass(e, "pswp--zoom-allowed") : o.removeClass(e, "pswp--zoom-allowed"), l()
						},
						l = function () {
							i && (o.removeClass(e, "pswp--dragging"), i = !1)
						};
					Lt("resize", r), Lt("afterChange", r), Lt("pointerDown", function () {
						a.mouseZoomedIn && (i = !0, o.addClass(e, "pswp--dragging"))
					}), Lt("pointerUp", l), t || r()
				},
				initDesktopZoom: function () {
					z || (E ? Lt("mouseUsed", function () {
						a.setupDesktopZoom()
					}) : a.setupDesktopZoom(!0))
				}
			}
		});
		var li, si, ui, ci, di, mi, pi, fi, hi, yi, vi, xi = {
				history: !0,
				galleryUID: 1
			},
			gi = function () {
				return vi.hash.substring(1)
			},
			wi = function () {
				li && clearTimeout(li), ui && clearTimeout(ui)
			},
			bi = function () {
				var e = gi(),
					t = {};
				if (5 > e.length) return t;
				for (var n = e.split("&"), i = 0; n.length > i; i++)
					if (n[i]) {
						var o = n[i].split("=");
						2 > o.length || (t[o[0]] = o[1])
					}
				return t.pid = parseInt(t.pid, 10) - 1, 0 > t.pid && (t.pid = 0), t
			},
			Ii = function () {
				if (ui && clearTimeout(ui), on || X) return ui = setTimeout(Ii, 500), void 0;
				ci ? clearTimeout(si) : ci = !0;
				var e = pi + "&" + "gid=" + s.galleryUID + "&" + "pid=" + (m + 1);
				if (fi) {
					var t = vi.href.split("#")[0] + "#" + e;
					vi.replace(t)
				} else -1 === vi.hash.indexOf(e) && (yi = !0), vi.hash = e;
				fi = !0, si = setTimeout(function () {
					ci = !1
				}, 60)
			};
		Rt("History", {
			publicMethods: {
				initHistory: function () {
					if (o.extend(s, xi, !0), s.history) {
						vi = window.location, yi = !1, hi = !1, fi = !1, pi = gi(), pi.indexOf("gid=") > -1 && (pi = pi.split("&gid=")[0], pi = pi.split("?gid=")[0]), Lt("afterChange", a.updateURL), Lt("unbindEvents", function () {
							o.unbind(window, "hashchange", a.onHashChange)
						});
						var e = function () {
							mi = !0, hi || (yi ? history.back() : pi ? vi.hash = pi : "pushState" in history ? history.pushState("", document.title, vi.pathname + vi.search) : vi.hash = ""), wi()
						};
						Lt("unbindEvents", function () {
							d && e()
						}), Lt("destroy", function () {
							mi || e()
						}), Lt("firstUpdate", function () {
							m = bi().pid
						});
						var t = pi.indexOf("pid=");
						t > -1 && (pi = pi.substring(0, t), "&" === pi.slice(-1) && (pi = pi.slice(0, -1))), setTimeout(function () {
							u && o.bind(window, "hashchange", a.onHashChange)
						}, 40)
					}
				},
				onHashChange: function () {
					return gi() === pi ? (hi = !0, a.close(), void 0) : (ci || (di = !0, a.goTo(bi().pid), di = !1), void 0)
				},
				updateURL: function () {
					wi(), di || (fi ? li = setTimeout(Ii, 800) : Ii())
				}
			}
		}), o.extend(a, cn)
	};
	return e
});

/*! PhotoSwipe Default UI - 4.0.0 - 2014-12-16
 * http://photoswipe.com
 * Copyright (c) 2014 Dmitry Semenov; */
(function (e, t) {
	"function" == typeof define && define.amd ? define(t) : "object" == typeof exports ? module.exports = t() : e.PhotoSwipeUI_Default = t()
})(this, function () {
	"use strict";
	var e = function (e, t) {
		var n, o, i, a, r, l, s, u, c, d, p, m, f, h, v, y, x = this,
			w = !1,
			g = !0,
			b = !0,
			I = {
				barsSize: {
					top: 44,
					bottom: "auto"
				},
				closeElClasses: ["item", "caption", "zoom-wrap", "ui", "top-bar"],
				timeToIdle: 4e3,
				timeToIdleOutside: 1e3,
				loadingIndicatorDelay: 1e3,
				addCaptionHTMLFn: function (e, t) {
					return e.title ? (t.children[0].innerHTML = e.title, !0) : (t.children[0].innerHTML = "", !1)
				},
				closeEl: !0,
				captionEl: !0,
				fullscreenEl: !0,
				zoomEl: !0,
				shareEl: !0,
				counterEl: !0,
				arrowEl: !0,
				preloaderEl: !0,
				tapToClose: !1,
				tapToToggleControls: !0,
				shareButtons: [{
					id: "facebook",
					label: "Share on Facebook",
					url: "https://www.facebook.com/sharer/sharer.php?u={{url}}"
				}, {
					id: "twitter",
					label: "Tweet",
					url: "https://twitter.com/intent/tweet?text={{text}}&url={{url}}"
				}, {
					id: "pinterest",
					label: "Pin it",
					url: "http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"
				}, {
					id: "download",
					label: "Download image",
					url: "{{raw_image_url}}",
					download: !0
				}],
				indexIndicatorSep: " / "
			},
			C = function (e) {
				if (f) return !0;
				e = e || window.event;
				for (var n, o, i = e.target || e.srcElement, a = i.className, r = 0; Z.length > r; r++) n = Z[r], n.onTap && a.indexOf("pswp__" + n.name) > -1 && (n.onTap(), o = !0);
				if (o) {
					e.stopPropagation && e.stopPropagation(), f = !0;
					var l = t.features.isOldAndroid ? 600 : 30;
					h = setTimeout(function () {
						f = !1
					}, l)
				}
			},
			T = function () {
				return !e.likelyTouchDevice || e.options.mouseUsed || screen.width > 1200
			},
			E = function () {
				return b = !b, b ? (t.removeClass(s, "pswp__share-modal--fade-in"), setTimeout(function () {
					b && t[(b ? "add" : "remove") + "Class"](s, "pswp__share-modal--hidden")
				}, 300)) : (t[(b ? "add" : "remove") + "Class"](s, "pswp__share-modal--hidden"), setTimeout(function () {
					b || t.addClass(s, "pswp__share-modal--fade-in")
				}, 30)), b || _(), !1
			},
			D = function (e) {
				e = e || window.event;
				var t = e.target || e.srcElement;
				return t.href ? t.hasAttribute("download") ? !0 : (window.open(t.href, "pswp_share", "scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left=" + (window.screen ? Math.round(screen.width / 2 - 275) : 100)), b || E(), !1) : !1
			},
			_ = function () {
				for (var t, n, o = "", i = 0; e.options.shareButtons.length > i; i++) t = e.options.shareButtons[i], n = t.url.replace("{{url}}", encodeURIComponent(window.location.href)).replace("{{image_url}}", encodeURIComponent(e.currItem.src || "")).replace("{{raw_image_url}}", e.currItem.src || "").replace("{{text}}", encodeURIComponent(e.currItem.title || "")), o += '<a href="' + n + '" target="_blank" class="pswp__share--' + t.id + '"' + (t.download ? "download" : "") + ">" + t.label + "</a>";
				s.children[0].innerHTML = o, s.children[0].onclick = D
			},
			M = function (n) {
				for (var o = 0; e.options.closeElClasses.length > o; o++)
					if (t.hasClass(n, "pswp__" + e.options.closeElClasses[o])) return !0
			},
			F = 0,
			S = function () {
				clearTimeout(y), F = 0, c && x.setIdle(!1)
			},
			k = function (t) {
				t = t ? t : window.event;
				var n = t.relatedTarget || t.toElement;
				n && "HTML" !== n.nodeName || (clearTimeout(y), y = setTimeout(function () {
					x.setIdle(!0)
				}, e.options.timeToIdleOutside))
			},
			O = function (e) {
				p !== e && (t[(e ? "remove" : "add") + "Class"](d, "pswp__preloader--active"), p = e)
			},
			Z = [{
				name: "caption",
				option: "captionEl",
				onInit: function (e) {
					i = e
				}
			}, {
				name: "share-modal",
				option: "shareEl",
				onInit: function (e) {
					s = e
				},
				onTap: function () {
					E()
				}
			}, {
				name: "button--share",
				option: "shareEl",
				onInit: function (e) {
					l = e
				},
				onTap: function () {
					E()
				}
			}, {
				name: "button--zoom",
				option: "zoomEl",
				onTap: e.toggleDesktopZoom
			}, {
				name: "counter",
				option: "counterEl",
				onInit: function (e) {
					r = e
				}
			}, {
				name: "button--close",
				option: "closeEl",
				onTap: e.close
			}, {
				name: "button--arrow--left",
				option: "arrowEl",
				onTap: e.prev
			}, {
				name: "button--arrow--right",
				option: "arrowEl",
				onTap: e.next
			}, {
				name: "button--fs",
				option: "fullscreenEl",
				onTap: function () {
					n.isFullscreen() ? n.exit() : n.enter()
				}
			}, {
				name: "preloader",
				option: "preloaderEl",
				onInit: function (e) {
					d = e
				}
			}];
		x.init = function () {
			t.extend(e.options, I, !0), o = e.scrollWrap.children[1];
			var r = e.listen;
			r("onVerticalDrag", function (e) {
				g && .95 > e ? x.hideControls() : !g && e >= .95 && x.showControls()
			});
			var u;
			r("onPinchClose", function (e) {
				g && .9 > e ? (x.hideControls(), u = !0) : u && !g && e > .9 && x.showControls()
			}), r("zoomGestureEnded", function () {
				u = !1, u && !g && x.showControls()
			}), r("beforeChange", x.update), r("doubleTap", function (t) {
				var n = e.currItem.initialZoomLevel;
				e.getZoomLevel() !== n ? e.zoomTo(n, t, 333) : e.zoomTo(e.currItem.doubleTapZoom, t, 333)
			}), e.options.timeToIdle && r("mouseUsed", function () {
				t.bind(document, "mousemove", S), t.bind(document, "mouseout", k), v = setInterval(function () {
					F++, 2 === F && x.setIdle(!0)
				}, e.options.timeToIdle / 2)
			}), r("preventDragEvent", function (e, t, n) {
				var o = e.target || e.srcElement;
				o && o.className && e.type.indexOf("mouse") > -1 && (o.className.indexOf("__caption") > 0 || /(SMALL|STRONG|EM)/i.test(o.tagName)) && (n.prevent = !1)
			}), r("bindEvents", function () {
				t.bind(o, "pswpTap click", C), t.bind(e.scrollWrap, "pswpTap", x.onGlobalTap), e.likelyTouchDevice || t.bind(e.scrollWrap, "mouseover", x.onMouseOver)
			}), r("unbindEvents", function () {
				b || E(), v && clearInterval(v), t.unbind(document, "mouseout", k), t.unbind(document, "mousemove", S), t.unbind(o, "pswpTap click", C), t.unbind(e.scrollWrap, "pswpTap", x.onGlobalTap), t.unbind(e.scrollWrap, "mouseover", x.onMouseOver), n && (t.unbind(document, n.eventK, x.updateFullscreen), n.isFullscreen() && (I.hideAnimationDuration = 0, n.exit()), n = null)
			}), r("destroy", function () {
				e.options.captionEl && (a && o.removeChild(a), t.removeClass(i, "pswp__caption--empty")), s && (s.children[0].onclick = null), t.removeClass(o, "pswp__ui--over-close"), t.addClass(o, "pswp__ui--hidden"), x.setIdle(!1)
			}), e.options.showAnimationDuration || t.removeClass(o, "pswp__ui--hidden"), r("initialZoomIn", function () {
				e.options.showAnimationDuration && t.removeClass(o, "pswp__ui--hidden")
			}), r("initialZoomOut", function () {
				t.addClass(o, "pswp__ui--hidden")
			}), r("parseVerticalMargin", function (n) {
				var r = n.vGap;
				if (T()) {
					var l = e.options.barsSize;
					if (e.options.captionEl && "auto" === l.bottom)
						if (a || (a = t.createEl("pswp__caption pswp__caption--fake"), a.appendChild(t.createEl("pswp__caption__center")), o.insertBefore(a, i), t.addClass(o, "pswp__ui--fit")), e.options.addCaptionHTMLFn(n, a, !0)) {
							var s = a.clientHeight;
							r.bottom = parseInt(s, 10) || 44
						} else r.bottom = l.top;
					else r.bottom = l.bottom;
					r.top = l.top
				} else r.top = r.bottom = 0
			});
			var c, d, p, f = function (n) {
				for (var o = n.length, i = 0; o > i; i++) {
					c = n[i], d = c.className;
					for (var a = 0; Z.length > a; a++) p = Z[a], d.indexOf("pswp__" + p.name) > -1 && (e.options[p.option] ? (t.removeClass(c, "pswp__element--disabled"), p.onInit && p.onInit(c)) : t.addClass(c, "pswp__element--disabled"))
				}
			};
			f(o.children), f(o.children[0].children), e.options.shareEl && l && s && (b = !0), e.options.fullscreenEl && (n || (n = x.getFullscreenAPI()), n ? (t.bind(document, n.eventK, x.updateFullscreen), x.updateFullscreen(), t.addClass(e.template, "pswp--supports-fs")) : t.removeClass(e.template, "pswp--supports-fs")), e.options.preloaderEl && (O(!0), r("beforeChange", function () {
				clearTimeout(m), m = setTimeout(function () {
					e.currItem && e.currItem.loading ? (!e.allowProgressiveImg() || e.currItem.img && !e.currItem.img.naturalWidth) && O(!1) : O(!0)
				}, e.options.loadingIndicatorDelay)
			}), r("imageLoadComplete", function (t, n) {
				e.currItem === n && O(!0)
			}))
		}, x.setIdle = function (e) {
			c = e, t[(e ? "add" : "remove") + "Class"](o, "pswp__ui--idle")
		}, x.update = function () {
			g && e.currItem ? (x.updateIndexIndicator(), e.options.captionEl && (e.options.addCaptionHTMLFn(e.currItem, i), e.currItem.title ? t.removeClass(i, "pswp__caption--empty") : t.addClass(i, "pswp__caption--empty")), w = !0) : w = !1
		}, x.updateFullscreen = function () {
			t[(n.isFullscreen() ? "add" : "remove") + "Class"](e.template, "pswp--fs")
		}, x.updateIndexIndicator = function () {
			e.options.counterEl && (r.innerHTML = e.getCurrentIndex() + 1 + e.options.indexIndicatorSep + e.options.getNumItemsFn())
		}, x.onGlobalTap = function (n) {
			n = n || window.event;
			var o = n.target || n.srcElement;
			if (!f)
				if (n.detail && "mouse" === n.detail.pointerType) M(o) && e.close(), t.hasClass(o, "pswp__img") && (1 === e.getZoomLevel() && e.getZoomLevel() <= e.currItem.fitRatio ? e.close() : e.toggleDesktopZoom(n.detail.releasePoint));
				else if (e.options.tapToToggleControls && (g ? x.hideControls() : x.showControls()), e.options.tapToClose && (t.hasClass(o, "pswp__img") || M(o))) return e.close(), void 0
		}, x.onMouseOver = function (e) {
			e = e || window.event;
			var n = e.target || e.srcElement;
			M(n) ? t.addClass(o, "pswp__ui--over-close") : t.removeClass(o, "pswp__ui--over-close")
		}, x.hideControls = function () {
			t.addClass(o, "pswp__ui--hidden"), g = !1
		}, x.showControls = function () {
			g = !0, w || x.update(), t.removeClass(o, "pswp__ui--hidden")
		}, x.supportsFullscreen = function () {
			var e = document;
			return !!(e.exitFullscreen || e.mozCancelFullScreen || e.webkitExitFullscreen || e.msExitFullscreen)
		}, x.getFullscreenAPI = function () {
			var t, n = document.documentElement,
				o = "fullscreenchange";
			return n.requestFullscreen ? t = {
				enterK: "requestFullscreen",
				exitK: "exitFullscreen",
				elementK: "fullscreenElement",
				eventK: o
			} : n.mozRequestFullScreen ? t = {
				enterK: "mozRequestFullScreen",
				exitK: "mozCancelFullScreen",
				elementK: "mozFullScreenElement",
				eventK: "moz" + o
			} : n.webkitRequestFullscreen ? t = {
				enterK: "webkitRequestFullscreen",
				exitK: "webkitExitFullscreen",
				elementK: "webkitFullscreenElement",
				eventK: "webkit" + o
			} : n.msRequestFullscreen && (t = {
				enterK: "msRequestFullscreen",
				exitK: "msExitFullscreen",
				elementK: "msFullscreenElement",
				eventK: "MSFullscreenChange"
			}), t && (t.enter = function () {
				return u = e.options.closeOnScroll, e.options.closeOnScroll = !1, "webkitRequestFullscreen" !== this.enterK ? e.template[this.enterK]() : (e.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT), void 0)
			}, t.exit = function () {
				return e.options.closeOnScroll = u, document[this.exitK]()
			}, t.isFullscreen = function () {
				return document[this.elementK]
			}), t
		}
	};
	return e
});



/*! ScrollMagic v2.0.5 | (c) 2015 Jan Paepke (@janpaepke) | license & info: http://scrollmagic.io */
! function (e, t) {
	"function" == typeof define && define.amd ? define(t) : "object" == typeof exports ? module.exports = t() : e.ScrollMagic = t()
}(this, function () {
	"use strict";
	var e = function () {};
	e.version = "2.0.5", window.addEventListener("mousewheel", function () {});
	var t = "data-scrollmagic-pin-spacer";
	e.Controller = function (r) {
		var o, s, a = "ScrollMagic.Controller",
			l = "FORWARD",
			c = "REVERSE",
			u = "PAUSED",
			f = n.defaults,
			d = this,
			h = i.extend({}, f, r),
			g = [],
			p = !1,
			v = 0,
			m = u,
			w = !0,
			y = 0,
			S = !0,
			b = function () {
				for (var e in h) f.hasOwnProperty(e) || delete h[e];
				if (h.container = i.get.elements(h.container)[0], !h.container) throw a + " init failed.";
				w = h.container === window || h.container === document.body || !document.body.contains(h.container), w && (h.container = window), y = z(), h.container.addEventListener("resize", T), h.container.addEventListener("scroll", T), h.refreshInterval = parseInt(h.refreshInterval) || f.refreshInterval, E()
			},
			E = function () {
				h.refreshInterval > 0 && (s = window.setTimeout(A, h.refreshInterval))
			},
			x = function () {
				return h.vertical ? i.get.scrollTop(h.container) : i.get.scrollLeft(h.container)
			},
			z = function () {
				return h.vertical ? i.get.height(h.container) : i.get.width(h.container)
			},
			C = this._setScrollPos = function (e) {
				h.vertical ? w ? window.scrollTo(i.get.scrollLeft(), e) : h.container.scrollTop = e : w ? window.scrollTo(e, i.get.scrollTop()) : h.container.scrollLeft = e
			},
			F = function () {
				if (S && p) {
					var e = i.type.Array(p) ? p : g.slice(0);
					p = !1;
					var t = v;
					v = d.scrollPos();
					var n = v - t;
					0 !== n && (m = n > 0 ? l : c), m === c && e.reverse(), e.forEach(function (e) {
						e.update(!0)
					})
				}
			},
			L = function () {
				o = i.rAF(F)
			},
			T = function (e) {
				"resize" == e.type && (y = z(), m = u), p !== !0 && (p = !0, L())
			},
			A = function () {
				if (!w && y != z()) {
					var e;
					try {
						e = new Event("resize", {
							bubbles: !1,
							cancelable: !1
						})
					} catch (t) {
						e = document.createEvent("Event"), e.initEvent("resize", !1, !1)
					}
					h.container.dispatchEvent(e)
				}
				g.forEach(function (e) {
					e.refresh()
				}), E()
			};
		this._options = h;
		var O = function (e) {
			if (e.length <= 1) return e;
			var t = e.slice(0);
			return t.sort(function (e, t) {
				return e.scrollOffset() > t.scrollOffset() ? 1 : -1
			}), t
		};
		return this.addScene = function (t) {
			if (i.type.Array(t)) t.forEach(function (e) {
				d.addScene(e)
			});
			else if (t instanceof e.Scene)
				if (t.controller() !== d) t.addTo(d);
				else if (g.indexOf(t) < 0) {
				g.push(t), g = O(g), t.on("shift.controller_sort", function () {
					g = O(g)
				});
				for (var n in h.globalSceneOptions) t[n] && t[n].call(t, h.globalSceneOptions[n])
			}
			return d
		}, this.removeScene = function (e) {
			if (i.type.Array(e)) e.forEach(function (e) {
				d.removeScene(e)
			});
			else {
				var t = g.indexOf(e);
				t > -1 && (e.off("shift.controller_sort"), g.splice(t, 1), e.remove())
			}
			return d
		}, this.updateScene = function (t, n) {
			return i.type.Array(t) ? t.forEach(function (e) {
				d.updateScene(e, n)
			}) : n ? t.update(!0) : p !== !0 && t instanceof e.Scene && (p = p || [], -1 == p.indexOf(t) && p.push(t), p = O(p), L()), d
		}, this.update = function (e) {
			return T({
				type: "resize"
			}), e && F(), d
		}, this.scrollTo = function (n, r) {
			if (i.type.Number(n)) C.call(h.container, n, r);
			else if (n instanceof e.Scene) n.controller() === d && d.scrollTo(n.scrollOffset(), r);
			else if (i.type.Function(n)) C = n;
			else {
				var o = i.get.elements(n)[0];
				if (o) {
					for (; o.parentNode.hasAttribute(t);) o = o.parentNode;
					var s = h.vertical ? "top" : "left",
						a = i.get.offset(h.container),
						l = i.get.offset(o);
					w || (a[s] -= d.scrollPos()), d.scrollTo(l[s] - a[s], r)
				}
			}
			return d
		}, this.scrollPos = function (e) {
			return arguments.length ? (i.type.Function(e) && (x = e), d) : x.call(d)
		}, this.info = function (e) {
			var t = {
				size: y,
				vertical: h.vertical,
				scrollPos: v,
				scrollDirection: m,
				container: h.container,
				isDocument: w
			};
			return arguments.length ? void 0 !== t[e] ? t[e] : void 0 : t
		}, this.loglevel = function () {
			return d
		}, this.enabled = function (e) {
			return arguments.length ? (S != e && (S = !!e, d.updateScene(g, !0)), d) : S
		}, this.destroy = function (e) {
			window.clearTimeout(s);
			for (var t = g.length; t--;) g[t].destroy(e);
			return h.container.removeEventListener("resize", T), h.container.removeEventListener("scroll", T), i.cAF(o), null
		}, b(), d
	};
	var n = {
		defaults: {
			container: window,
			vertical: !0,
			globalSceneOptions: {},
			loglevel: 2,
			refreshInterval: 100
		}
	};
	e.Controller.addOption = function (e, t) {
		n.defaults[e] = t
	}, e.Controller.extend = function (t) {
		var n = this;
		e.Controller = function () {
			return n.apply(this, arguments), this.$super = i.extend({}, this), t.apply(this, arguments) || this
		}, i.extend(e.Controller, n), e.Controller.prototype = n.prototype, e.Controller.prototype.constructor = e.Controller
	}, e.Scene = function (n) {
		var o, s, a = "BEFORE",
			l = "DURING",
			c = "AFTER",
			u = r.defaults,
			f = this,
			d = i.extend({}, u, n),
			h = a,
			g = 0,
			p = {
				start: 0,
				end: 0
			},
			v = 0,
			m = !0,
			w = function () {
				for (var e in d) u.hasOwnProperty(e) || delete d[e];
				for (var t in u) L(t);
				C()
			},
			y = {};
		this.on = function (e, t) {
			return i.type.Function(t) && (e = e.trim().split(" "), e.forEach(function (e) {
				var n = e.split("."),
					r = n[0],
					i = n[1];
				"*" != r && (y[r] || (y[r] = []), y[r].push({
					namespace: i || "",
					callback: t
				}))
			})), f
		}, this.off = function (e, t) {
			return e ? (e = e.trim().split(" "), e.forEach(function (e) {
				var n = e.split("."),
					r = n[0],
					i = n[1] || "",
					o = "*" === r ? Object.keys(y) : [r];
				o.forEach(function (e) {
					for (var n = y[e] || [], r = n.length; r--;) {
						var o = n[r];
						!o || i !== o.namespace && "*" !== i || t && t != o.callback || n.splice(r, 1)
					}
					n.length || delete y[e]
				})
			}), f) : f
		}, this.trigger = function (t, n) {
			if (t) {
				var r = t.trim().split("."),
					i = r[0],
					o = r[1],
					s = y[i];
				s && s.forEach(function (t) {
					o && o !== t.namespace || t.callback.call(f, new e.Event(i, t.namespace, f, n))
				})
			}
			return f
		}, f.on("change.internal", function (e) {
			"loglevel" !== e.what && "tweenChanges" !== e.what && ("triggerElement" === e.what ? E() : "reverse" === e.what && f.update())
		}).on("shift.internal", function () {
			S(), f.update()
		}), this.addTo = function (t) {
			return t instanceof e.Controller && s != t && (s && s.removeScene(f), s = t, C(), b(!0), E(!0), S(), s.info("container").addEventListener("resize", x), t.addScene(f), f.trigger("add", {
				controller: s
			}), f.update()), f
		}, this.enabled = function (e) {
			return arguments.length ? (m != e && (m = !!e, f.update(!0)), f) : m
		}, this.remove = function () {
			if (s) {
				s.info("container").removeEventListener("resize", x);
				var e = s;
				s = void 0, e.removeScene(f), f.trigger("remove")
			}
			return f
		}, this.destroy = function (e) {
			return f.trigger("destroy", {
				reset: e
			}), f.remove(), f.off("*.*"), null
		}, this.update = function (e) {
			if (s)
				if (e)
					if (s.enabled() && m) {
						var t, n = s.info("scrollPos");
						t = d.duration > 0 ? (n - p.start) / (p.end - p.start) : n >= p.start ? 1 : 0, f.trigger("update", {
							startPos: p.start,
							endPos: p.end,
							scrollPos: n
						}), f.progress(t)
					} else T && h === l && O(!0);
			else s.updateScene(f, !1);
			return f
		}, this.refresh = function () {
			return b(), E(), f
		}, this.progress = function (e) {
			if (arguments.length) {
				var t = !1,
					n = h,
					r = s ? s.info("scrollDirection") : "PAUSED",
					i = d.reverse || e >= g;
				if (0 === d.duration ? (t = g != e, g = 1 > e && i ? 0 : 1, h = 0 === g ? a : l) : 0 > e && h !== a && i ? (g = 0, h = a, t = !0) : e >= 0 && 1 > e && i ? (g = e, h = l, t = !0) : e >= 1 && h !== c ? (g = 1, h = c, t = !0) : h !== l || i || O(), t) {
					var o = {
							progress: g,
							state: h,
							scrollDirection: r
						},
						u = h != n,
						p = function (e) {
							f.trigger(e, o)
						};
					u && n !== l && (p("enter"), p(n === a ? "start" : "end")), p("progress"), u && h !== l && (p(h === a ? "start" : "end"), p("leave"))
				}
				return f
			}
			return g
		};
		var S = function () {
				p = {
					start: v + d.offset
				}, s && d.triggerElement && (p.start -= s.info("size") * d.triggerHook), p.end = p.start + d.duration
			},
			b = function (e) {
				if (o) {
					var t = "duration";
					F(t, o.call(f)) && !e && (f.trigger("change", {
						what: t,
						newval: d[t]
					}), f.trigger("shift", {
						reason: t
					}))
				}
			},
			E = function (e) {
				var n = 0,
					r = d.triggerElement;
				if (s && r) {
					for (var o = s.info(), a = i.get.offset(o.container), l = o.vertical ? "top" : "left"; r.parentNode.hasAttribute(t);) r = r.parentNode;
					var c = i.get.offset(r);
					o.isDocument || (a[l] -= s.scrollPos()), n = c[l] - a[l]
				}
				var u = n != v;
				v = n, u && !e && f.trigger("shift", {
					reason: "triggerElementPosition"
				})
			},
			x = function () {
				d.triggerHook > 0 && f.trigger("shift", {
					reason: "containerResize"
				})
			},
			z = i.extend(r.validate, {
				duration: function (e) {
					if (i.type.String(e) && e.match(/^(\.|\d)*\d+%$/)) {
						var t = parseFloat(e) / 100;
						e = function () {
							return s ? s.info("size") * t : 0
						}
					}
					if (i.type.Function(e)) {
						o = e;
						try {
							e = parseFloat(o())
						} catch (n) {
							e = -1
						}
					}
					if (e = parseFloat(e), !i.type.Number(e) || 0 > e) throw o ? (o = void 0, 0) : 0;
					return e
				}
			}),
			C = function (e) {
				e = arguments.length ? [e] : Object.keys(z), e.forEach(function (e) {
					var t;
					if (z[e]) try {
						t = z[e](d[e])
					} catch (n) {
						t = u[e]
					} finally {
						d[e] = t
					}
				})
			},
			F = function (e, t) {
				var n = !1,
					r = d[e];
				return d[e] != t && (d[e] = t, C(e), n = r != d[e]), n
			},
			L = function (e) {
				f[e] || (f[e] = function (t) {
					return arguments.length ? ("duration" === e && (o = void 0), F(e, t) && (f.trigger("change", {
						what: e,
						newval: d[e]
					}), r.shifts.indexOf(e) > -1 && f.trigger("shift", {
						reason: e
					})), f) : d[e]
				})
			};
		this.controller = function () {
			return s
		}, this.state = function () {
			return h
		}, this.scrollOffset = function () {
			return p.start
		}, this.triggerPosition = function () {
			var e = d.offset;
			return s && (e += d.triggerElement ? v : s.info("size") * f.triggerHook()), e
		};
		var T, A;
		f.on("shift.internal", function (e) {
			var t = "duration" === e.reason;
			(h === c && t || h === l && 0 === d.duration) && O(), t && _()
		}).on("progress.internal", function () {
			O()
		}).on("add.internal", function () {
			_()
		}).on("destroy.internal", function (e) {
			f.removePin(e.reset)
		});
		var O = function (e) {
				if (T && s) {
					var t = s.info(),
						n = A.spacer.firstChild;
					if (e || h !== l) {
						var r = {
								position: A.inFlow ? "relative" : "absolute",
								top: 0,
								left: 0
							},
							o = i.css(n, "position") != r.position;
						A.pushFollowers ? d.duration > 0 && (h === c && 0 === parseFloat(i.css(A.spacer, "padding-top")) ? o = !0 : h === a && 0 === parseFloat(i.css(A.spacer, "padding-bottom")) && (o = !0)) : r[t.vertical ? "top" : "left"] = d.duration * g, i.css(n, r), o && _()
					} else {
						"fixed" != i.css(n, "position") && (i.css(n, {
							position: "fixed"
						}), _());
						var u = i.get.offset(A.spacer, !0),
							f = d.reverse || 0 === d.duration ? t.scrollPos - p.start : Math.round(g * d.duration * 10) / 10;
						u[t.vertical ? "top" : "left"] += f, i.css(A.spacer.firstChild, {
							top: u.top,
							left: u.left
						})
					}
				}
			},
			_ = function () {
				if (T && s && A.inFlow) {
					var e = h === l,
						t = s.info("vertical"),
						n = A.spacer.firstChild,
						r = i.isMarginCollapseType(i.css(A.spacer, "display")),
						o = {};
					A.relSize.width || A.relSize.autoFullWidth ? e ? i.css(T, {
						width: i.get.width(A.spacer)
					}) : i.css(T, {
						width: "100%"
					}) : (o["min-width"] = i.get.width(t ? T : n, !0, !0), o.width = e ? o["min-width"] : "auto"), A.relSize.height ? e ? i.css(T, {
						height: i.get.height(A.spacer) - (A.pushFollowers ? d.duration : 0)
					}) : i.css(T, {
						height: "100%"
					}) : (o["min-height"] = i.get.height(t ? n : T, !0, !r), o.height = e ? o["min-height"] : "auto"), A.pushFollowers && (o["padding" + (t ? "Top" : "Left")] = d.duration * g, o["padding" + (t ? "Bottom" : "Right")] = d.duration * (1 - g)), i.css(A.spacer, o)
				}
			},
			N = function () {
				s && T && h === l && !s.info("isDocument") && O()
			},
			P = function () {
				s && T && h === l && ((A.relSize.width || A.relSize.autoFullWidth) && i.get.width(window) != i.get.width(A.spacer.parentNode) || A.relSize.height && i.get.height(window) != i.get.height(A.spacer.parentNode)) && _()
			},
			D = function (e) {
				s && T && h === l && !s.info("isDocument") && (e.preventDefault(), s._setScrollPos(s.info("scrollPos") - ((e.wheelDelta || e[s.info("vertical") ? "wheelDeltaY" : "wheelDeltaX"]) / 3 || 30 * -e.detail)))
			};
		this.setPin = function (e, n) {
			var r = {
				pushFollowers: !0,
				spacerClass: "scrollmagic-pin-spacer"
			};
			if (n = i.extend({}, r, n), e = i.get.elements(e)[0], !e) return f;
			if ("fixed" === i.css(e, "position")) return f;
			if (T) {
				if (T === e) return f;
				f.removePin()
			}
			T = e;
			var o = T.parentNode.style.display,
				s = ["top", "left", "bottom", "right", "margin", "marginLeft", "marginRight", "marginTop", "marginBottom"];
			T.parentNode.style.display = "none";
			var a = "absolute" != i.css(T, "position"),
				l = i.css(T, s.concat(["display"])),
				c = i.css(T, ["width", "height"]);
			T.parentNode.style.display = o, !a && n.pushFollowers && (n.pushFollowers = !1);
			var u = T.parentNode.insertBefore(document.createElement("div"), T),
				d = i.extend(l, {
					position: a ? "relative" : "absolute",
					boxSizing: "content-box",
					mozBoxSizing: "content-box",
					webkitBoxSizing: "content-box"
				});
			if (a || i.extend(d, i.css(T, ["width", "height"])), i.css(u, d), u.setAttribute(t, ""), i.addClass(u, n.spacerClass), A = {
					spacer: u,
					relSize: {
						width: "%" === c.width.slice(-1),
						height: "%" === c.height.slice(-1),
						autoFullWidth: "auto" === c.width && a && i.isMarginCollapseType(l.display)
					},
					pushFollowers: n.pushFollowers,
					inFlow: a
				}, !T.___origStyle) {
				T.___origStyle = {};
				var h = T.style,
					g = s.concat(["width", "height", "position", "boxSizing", "mozBoxSizing", "webkitBoxSizing"]);
				g.forEach(function (e) {
					T.___origStyle[e] = h[e] || ""
				})
			}
			return A.relSize.width && i.css(u, {
				width: c.width
			}), A.relSize.height && i.css(u, {
				height: c.height
			}), u.appendChild(T), i.css(T, {
				position: a ? "relative" : "absolute",
				margin: "auto",
				top: "auto",
				left: "auto",
				bottom: "auto",
				right: "auto"
			}), (A.relSize.width || A.relSize.autoFullWidth) && i.css(T, {
				boxSizing: "border-box",
				mozBoxSizing: "border-box",
				webkitBoxSizing: "border-box"
			}), window.addEventListener("scroll", N), window.addEventListener("resize", N), window.addEventListener("resize", P), T.addEventListener("mousewheel", D), T.addEventListener("DOMMouseScroll", D), O(), f
		}, this.removePin = function (e) {
			if (T) {
				if (h === l && O(!0), e || !s) {
					var n = A.spacer.firstChild;
					if (n.hasAttribute(t)) {
						var r = A.spacer.style,
							o = ["margin", "marginLeft", "marginRight", "marginTop", "marginBottom"];
						margins = {}, o.forEach(function (e) {
							margins[e] = r[e] || ""
						}), i.css(n, margins)
					}
					A.spacer.parentNode.insertBefore(n, A.spacer), A.spacer.parentNode.removeChild(A.spacer), T.parentNode.hasAttribute(t) || (i.css(T, T.___origStyle), delete T.___origStyle)
				}
				window.removeEventListener("scroll", N), window.removeEventListener("resize", N), window.removeEventListener("resize", P), T.removeEventListener("mousewheel", D), T.removeEventListener("DOMMouseScroll", D), T = void 0
			}
			return f
		};
		var R, k = [];
		return f.on("destroy.internal", function (e) {
			f.removeClassToggle(e.reset)
		}), this.setClassToggle = function (e, t) {
			var n = i.get.elements(e);
			return 0 !== n.length && i.type.String(t) ? (k.length > 0 && f.removeClassToggle(), R = t, k = n, f.on("enter.internal_class leave.internal_class", function (e) {
				var t = "enter" === e.type ? i.addClass : i.removeClass;
				k.forEach(function (e) {
					t(e, R)
				})
			}), f) : f
		}, this.removeClassToggle = function (e) {
			return e && k.forEach(function (e) {
				i.removeClass(e, R)
			}), f.off("start.internal_class end.internal_class"), R = void 0, k = [], f
		}, w(), f
	};
	var r = {
		defaults: {
			duration: 0,
			offset: 0,
			triggerElement: void 0,
			triggerHook: .5,
			reverse: !0,
			loglevel: 2
		},
		validate: {
			offset: function (e) {
				if (e = parseFloat(e), !i.type.Number(e)) throw 0;
				return e
			},
			triggerElement: function (e) {
				if (e = e || void 0) {
					var t = i.get.elements(e)[0];
					if (!t) throw 0;
					e = t
				}
				return e
			},
			triggerHook: function (e) {
				var t = {
					onCenter: .5,
					onEnter: 1,
					onLeave: 0
				};
				if (i.type.Number(e)) e = Math.max(0, Math.min(parseFloat(e), 1));
				else {
					if (!(e in t)) throw 0;
					e = t[e]
				}
				return e
			},
			reverse: function (e) {
				return !!e
			}
		},
		shifts: ["duration", "offset", "triggerHook"]
	};
	e.Scene.addOption = function (e, t, n, i) {
		e in r.defaults || (r.defaults[e] = t, r.validate[e] = n, i && r.shifts.push(e))
	}, e.Scene.extend = function (t) {
		var n = this;
		e.Scene = function () {
			return n.apply(this, arguments), this.$super = i.extend({}, this), t.apply(this, arguments) || this
		}, i.extend(e.Scene, n), e.Scene.prototype = n.prototype, e.Scene.prototype.constructor = e.Scene
	}, e.Event = function (e, t, n, r) {
		r = r || {};
		for (var i in r) this[i] = r[i];
		return this.type = e, this.target = this.currentTarget = n, this.namespace = t || "", this.timeStamp = this.timestamp = Date.now(), this
	};
	var i = e._util = function (e) {
		var t, n = {},
			r = function (e) {
				return parseFloat(e) || 0
			},
			i = function (t) {
				return t.currentStyle ? t.currentStyle : e.getComputedStyle(t)
			},
			o = function (t, n, o, s) {
				if (n = n === document ? e : n, n === e) s = !1;
				else if (!f.DomElement(n)) return 0;
				t = t.charAt(0).toUpperCase() + t.substr(1).toLowerCase();
				var a = (o ? n["offset" + t] || n["outer" + t] : n["client" + t] || n["inner" + t]) || 0;
				if (o && s) {
					var l = i(n);
					a += "Height" === t ? r(l.marginTop) + r(l.marginBottom) : r(l.marginLeft) + r(l.marginRight)
				}
				return a
			},
			s = function (e) {
				return e.replace(/^[^a-z]+([a-z])/g, "$1").replace(/-([a-z])/g, function (e) {
					return e[1].toUpperCase()
				})
			};
		n.extend = function (e) {
			for (e = e || {}, t = 1; t < arguments.length; t++)
				if (arguments[t])
					for (var n in arguments[t]) arguments[t].hasOwnProperty(n) && (e[n] = arguments[t][n]);
			return e
		}, n.isMarginCollapseType = function (e) {
			return ["block", "flex", "list-item", "table", "-webkit-box"].indexOf(e) > -1
		};
		var a = 0,
			l = ["ms", "moz", "webkit", "o"],
			c = e.requestAnimationFrame,
			u = e.cancelAnimationFrame;
		for (t = 0; !c && t < l.length; ++t) c = e[l[t] + "RequestAnimationFrame"], u = e[l[t] + "CancelAnimationFrame"] || e[l[t] + "CancelRequestAnimationFrame"];
		c || (c = function (t) {
			var n = (new Date).getTime(),
				r = Math.max(0, 16 - (n - a)),
				i = e.setTimeout(function () {
					t(n + r)
				}, r);
			return a = n + r, i
		}), u || (u = function (t) {
			e.clearTimeout(t)
		}), n.rAF = c.bind(e), n.cAF = u.bind(e);
		var f = n.type = function (e) {
			return Object.prototype.toString.call(e).replace(/^\[object (.+)\]$/, "$1").toLowerCase()
		};
		f.String = function (e) {
			return "string" === f(e)
		}, f.Function = function (e) {
			return "function" === f(e)
		}, f.Array = function (e) {
			return Array.isArray(e)
		}, f.Number = function (e) {
			return !f.Array(e) && e - parseFloat(e) + 1 >= 0
		}, f.DomElement = function (e) {
			return "object" == typeof HTMLElement ? e instanceof HTMLElement : e && "object" == typeof e && null !== e && 1 === e.nodeType && "string" == typeof e.nodeName
		};
		var d = n.get = {};
		return d.elements = function (t) {
			var n = [];
			if (f.String(t)) try {
				t = document.querySelectorAll(t)
			} catch (r) {
				return n
			}
			if ("nodelist" === f(t) || f.Array(t))
				for (var i = 0, o = n.length = t.length; o > i; i++) {
					var s = t[i];
					n[i] = f.DomElement(s) ? s : d.elements(s)
				} else(f.DomElement(t) || t === document || t === e) && (n = [t]);
			return n
		}, d.scrollTop = function (t) {
			return t && "number" == typeof t.scrollTop ? t.scrollTop : e.pageYOffset || 0
		}, d.scrollLeft = function (t) {
			return t && "number" == typeof t.scrollLeft ? t.scrollLeft : e.pageXOffset || 0
		}, d.width = function (e, t, n) {
			return o("width", e, t, n)
		}, d.height = function (e, t, n) {
			return o("height", e, t, n)
		}, d.offset = function (e, t) {
			var n = {
				top: 0,
				left: 0
			};
			if (e && e.getBoundingClientRect) {
				var r = e.getBoundingClientRect();
				n.top = r.top, n.left = r.left, t || (n.top += d.scrollTop(), n.left += d.scrollLeft())
			}
			return n
		}, n.addClass = function (e, t) {
			t && (e.classList ? e.classList.add(t) : e.className += " " + t)
		}, n.removeClass = function (e, t) {
			t && (e.classList ? e.classList.remove(t) : e.className = e.className.replace(RegExp("(^|\\b)" + t.split(" ").join("|") + "(\\b|$)", "gi"), " "))
		}, n.css = function (e, t) {
			if (f.String(t)) return i(e)[s(t)];
			if (f.Array(t)) {
				var n = {},
					r = i(e);
				return t.forEach(function (e) {
					n[e] = r[s(e)]
				}), n
			}
			for (var o in t) {
				var a = t[o];
				a == parseFloat(a) && (a += "px"), e.style[s(o)] = a
			}
		}, n
	}(window || {});
	return e
});

/*! ScrollMagic v2.0.5 | (c) 2015 Jan Paepke (@janpaepke) | license & info: http://scrollmagic.io */
! function (e, n) {
	"function" == typeof define && define.amd ? define(["ScrollMagic", "TweenMax", "TimelineMax"], n) : "object" == typeof exports ? (require("gsap"), n(require("scrollmagic"), TweenMax, TimelineMax)) : n(e.ScrollMagic || e.jQuery && e.jQuery.ScrollMagic, e.TweenMax || e.TweenLite, e.TimelineMax || e.TimelineLite)
}(this, function (e, n, r) {
	"use strict";
	e.Scene.addOption("tweenChanges", !1, function (e) {
		return !!e
	}), e.Scene.extend(function () {
		var e, t = this;
		t.on("progress.plugin_gsap", function () {
			i()
		}), t.on("destroy.plugin_gsap", function (e) {
			t.removeTween(e.reset)
		});
		var i = function () {
			if (e) {
				var n = t.progress(),
					r = t.state();
				e.repeat && -1 === e.repeat() ? "DURING" === r && e.paused() ? e.play() : "DURING" === r || e.paused() || e.pause() : n != e.progress() && (0 === t.duration() ? n > 0 ? e.play() : e.reverse() : t.tweenChanges() && e.tweenTo ? e.tweenTo(n * e.duration()) : e.progress(n).pause())
			}
		};
		t.setTween = function (o, a, s) {
			var u;
			arguments.length > 1 && (arguments.length < 3 && (s = a, a = 1), o = n.to(o, a, s));
			try {
				u = r ? new r({
					smoothChildTiming: !0
				}).add(o) : o, u.pause()
			} catch (p) {
				return t
			}
			return e && t.removeTween(), e = u, o.repeat && -1 === o.repeat() && (e.repeat(-1), e.yoyo(o.yoyo())), i(), t
		}, t.removeTween = function (n) {
			return e && (n && e.progress(0).pause(), e.kill(), e = void 0), t
		}
	})
});

/*! ScrollMagic v2.0.5 | (c) 2015 Jan Paepke (@janpaepke) | license & info: http://scrollmagic.io */
! function (e, r) {
	"function" == typeof define && define.amd ? define(["ScrollMagic"], r) : r("object" == typeof exports ? require("scrollmagic") : e.ScrollMagic || e.jQuery && e.jQuery.ScrollMagic)
}(this, function (e) {
	"use strict";
	var r = "0.85em",
		t = "9999",
		i = 15,
		o = e._util,
		n = 0;
	e.Scene.extend(function () {
		var e, r = this;
		r.addIndicators = function (t) {
			if (!e) {
				var i = {
					name: "",
					indent: 0,
					parent: void 0,
					colorStart: "green",
					colorEnd: "red",
					colorTrigger: "blue"
				};
				t = o.extend({}, i, t), n++, e = new s(r, t), r.on("add.plugin_addIndicators", e.add), r.on("remove.plugin_addIndicators", e.remove), r.on("destroy.plugin_addIndicators", r.removeIndicators), r.controller() && e.add()
			}
			return r
		}, r.removeIndicators = function () {
			return e && (e.remove(), this.off("*.plugin_addIndicators"), e = void 0), r
		}
	}), e.Controller.addOption("addIndicators", !1), e.Controller.extend(function () {
		var r = this,
			t = r.info(),
			n = t.container,
			s = t.isDocument,
			d = t.vertical,
			a = {
				groups: []
			};
		this._indicators = a;
		var g = function () {
				a.updateBoundsPositions()
			},
			p = function () {
				a.updateTriggerGroupPositions()
			};
		return n.addEventListener("resize", p), s || (window.addEventListener("resize", p), window.addEventListener("scroll", p)), n.addEventListener("resize", g), n.addEventListener("scroll", g), this._indicators.updateBoundsPositions = function (e) {
			for (var r, t, s, g = e ? [o.extend({}, e.triggerGroup, {
					members: [e]
				})] : a.groups, p = g.length, u = {}, c = d ? "left" : "top", l = d ? "width" : "height", f = d ? o.get.scrollLeft(n) + o.get.width(n) - i : o.get.scrollTop(n) + o.get.height(n) - i; p--;)
				for (s = g[p], r = s.members.length, t = o.get[l](s.element.firstChild); r--;) u[c] = f - t, o.css(s.members[r].bounds, u)
		}, this._indicators.updateTriggerGroupPositions = function (e) {
			for (var t, g, p, u, c, l = e ? [e] : a.groups, f = l.length, m = s ? document.body : n, h = s ? {
					top: 0,
					left: 0
				} : o.get.offset(m, !0), v = d ? o.get.width(n) - i : o.get.height(n) - i, b = d ? "width" : "height", G = d ? "Y" : "X"; f--;) t = l[f], g = t.element, p = t.triggerHook * r.info("size"), u = o.get[b](g.firstChild.firstChild), c = p > u ? "translate" + G + "(-100%)" : "", o.css(g, {
				top: h.top + (d ? p : v - t.members[0].options.indent),
				left: h.left + (d ? v - t.members[0].options.indent : p)
			}), o.css(g.firstChild.firstChild, {
				"-ms-transform": c,
				"-webkit-transform": c,
				transform: c
			})
		}, this._indicators.updateTriggerGroupLabel = function (e) {
			var r = "trigger" + (e.members.length > 1 ? "" : " " + e.members[0].options.name),
				t = e.element.firstChild.firstChild,
				i = t.textContent !== r;
			i && (t.textContent = r, d && a.updateBoundsPositions())
		}, this.addScene = function (t) {
			this._options.addIndicators && t instanceof e.Scene && t.controller() === r && t.addIndicators(), this.$super.addScene.apply(this, arguments)
		}, this.destroy = function () {
			n.removeEventListener("resize", p), s || (window.removeEventListener("resize", p), window.removeEventListener("scroll", p)), n.removeEventListener("resize", g), n.removeEventListener("scroll", g), this.$super.destroy.apply(this, arguments)
		}, r
	});
	var s = function (e, r) {
			var t, i, s = this,
				a = d.bounds(),
				g = d.start(r.colorStart),
				p = d.end(r.colorEnd),
				u = r.parent && o.get.elements(r.parent)[0];
			r.name = r.name || n, g.firstChild.textContent += " " + r.name, p.textContent += " " + r.name, a.appendChild(g), a.appendChild(p), s.options = r, s.bounds = a, s.triggerGroup = void 0, this.add = function () {
				i = e.controller(), t = i.info("vertical");
				var r = i.info("isDocument");
				u || (u = r ? document.body : i.info("container")), r || "static" !== o.css(u, "position") || o.css(u, {
					position: "relative"
				}), e.on("change.plugin_addIndicators", l), e.on("shift.plugin_addIndicators", c), G(), h(), setTimeout(function () {
					i._indicators.updateBoundsPositions(s)
				}, 0)
			}, this.remove = function () {
				if (s.triggerGroup) {
					if (e.off("change.plugin_addIndicators", l), e.off("shift.plugin_addIndicators", c), s.triggerGroup.members.length > 1) {
						var r = s.triggerGroup;
						r.members.splice(r.members.indexOf(s), 1), i._indicators.updateTriggerGroupLabel(r), i._indicators.updateTriggerGroupPositions(r), s.triggerGroup = void 0
					} else b();
					m()
				}
			};
			var c = function () {
					h()
				},
				l = function (e) {
					"triggerHook" === e.what && G()
				},
				f = function () {
					var e = i.info("vertical");
					o.css(g.firstChild, {
						"border-bottom-width": e ? 1 : 0,
						"border-right-width": e ? 0 : 1,
						bottom: e ? -1 : r.indent,
						right: e ? r.indent : -1,
						padding: e ? "0 8px" : "2px 4px"
					}), o.css(p, {
						"border-top-width": e ? 1 : 0,
						"border-left-width": e ? 0 : 1,
						top: e ? "100%" : "",
						right: e ? r.indent : "",
						bottom: e ? "" : r.indent,
						left: e ? "" : "100%",
						padding: e ? "0 8px" : "2px 4px"
					}), u.appendChild(a)
				},
				m = function () {
					a.parentNode.removeChild(a)
				},
				h = function () {
					a.parentNode !== u && f();
					var r = {};
					r[t ? "top" : "left"] = e.triggerPosition(), r[t ? "height" : "width"] = e.duration(), o.css(a, r), o.css(p, {
						display: e.duration() > 0 ? "" : "none"
					})
				},
				v = function () {
					var n = d.trigger(r.colorTrigger),
						a = {};
					a[t ? "right" : "bottom"] = 0, a[t ? "border-top-width" : "border-left-width"] = 1, o.css(n.firstChild, a), o.css(n.firstChild.firstChild, {
						padding: t ? "0 8px 3px 8px" : "3px 4px"
					}), document.body.appendChild(n);
					var g = {
						triggerHook: e.triggerHook(),
						element: n,
						members: [s]
					};
					i._indicators.groups.push(g), s.triggerGroup = g, i._indicators.updateTriggerGroupLabel(g), i._indicators.updateTriggerGroupPositions(g)
				},
				b = function () {
					i._indicators.groups.splice(i._indicators.groups.indexOf(s.triggerGroup), 1), s.triggerGroup.element.parentNode.removeChild(s.triggerGroup.element), s.triggerGroup = void 0
				},
				G = function () {
					var r = e.triggerHook(),
						t = 1e-4;
					if (!(s.triggerGroup && Math.abs(s.triggerGroup.triggerHook - r) < t)) {
						for (var o, n = i._indicators.groups, d = n.length; d--;)
							if (o = n[d], Math.abs(o.triggerHook - r) < t) return s.triggerGroup && (1 === s.triggerGroup.members.length ? b() : (s.triggerGroup.members.splice(s.triggerGroup.members.indexOf(s), 1), i._indicators.updateTriggerGroupLabel(s.triggerGroup), i._indicators.updateTriggerGroupPositions(s.triggerGroup))), o.members.push(s), s.triggerGroup = o, void i._indicators.updateTriggerGroupLabel(o);
						if (s.triggerGroup) {
							if (1 === s.triggerGroup.members.length) return s.triggerGroup.triggerHook = r, void i._indicators.updateTriggerGroupPositions(s.triggerGroup);
							s.triggerGroup.members.splice(s.triggerGroup.members.indexOf(s), 1), i._indicators.updateTriggerGroupLabel(s.triggerGroup), i._indicators.updateTriggerGroupPositions(s.triggerGroup), s.triggerGroup = void 0
						}
						v()
					}
				}
		},
		d = {
			start: function (e) {
				var r = document.createElement("div");
				r.textContent = "start", o.css(r, {
					position: "absolute",
					overflow: "visible",
					"border-width": 0,
					"border-style": "solid",
					color: e,
					"border-color": e
				});
				var t = document.createElement("div");
				return o.css(t, {
					position: "absolute",
					overflow: "visible",
					width: 0,
					height: 0
				}), t.appendChild(r), t
			},
			end: function (e) {
				var r = document.createElement("div");
				return r.textContent = "end", o.css(r, {
					position: "absolute",
					overflow: "visible",
					"border-width": 0,
					"border-style": "solid",
					color: e,
					"border-color": e
				}), r
			},
			bounds: function () {
				var e = document.createElement("div");
				return o.css(e, {
					position: "absolute",
					overflow: "visible",
					"white-space": "nowrap",
					"pointer-events": "none",
					"font-size": r
				}), e.style.zIndex = t, e
			},
			trigger: function (e) {
				var i = document.createElement("div");
				i.textContent = "trigger", o.css(i, {
					position: "relative"
				});
				var n = document.createElement("div");
				o.css(n, {
					position: "absolute",
					overflow: "visible",
					"border-width": 0,
					"border-style": "solid",
					color: e,
					"border-color": e
				}), n.appendChild(i);
				var s = document.createElement("div");
				return o.css(s, {
					position: "fixed",
					overflow: "visible",
					"white-space": "nowrap",
					"pointer-events": "none",
					"font-size": r
				}), s.style.zIndex = t, s.appendChild(n), s
			}
		}
});

/**
* Swiper 3.4.2
* Most modern mobile touch slider and framework with hardware accelerated transitions
* 
* http://www.idangero.us/swiper/

* Released on: March 10, 2017
*/
// ! function () {
// 	"use strict";
// 	var e, a = function (s, i) {
// 		function r(e) {
// 			return Math.floor(e)
// 		}

// 		function n() {
// 			var e = T.params.autoplay,
// 				a = T.slides.eq(T.activeIndex);
// 			a.attr("data-swiper-autoplay") && (e = a.attr("data-swiper-autoplay") || T.params.autoplay), T.autoplayTimeoutId = setTimeout(function () {
// 				T.params.loop ? (T.fixLoop(), T._slideNext(), T.emit("onAutoplay", T)) : T.isEnd ? i.autoplayStopOnLast ? T.stopAutoplay() : (T._slideTo(0), T.emit("onAutoplay", T)) : (T._slideNext(), T.emit("onAutoplay", T))
// 			}, e)
// 		}

// 		function o(a, t) {
// 			var s = e(a.target);
// 			if (!s.is(t))
// 				if ("string" == typeof t) s = s.parents(t);
// 				else if (t.nodeType) {
// 				var i;
// 				return s.parents().each(function (e, a) {
// 					a === t && (i = t)
// 				}), i ? t : void 0
// 			}
// 			if (0 !== s.length) return s[0]
// 		}

// 		function l(e, a) {
// 			a = a || {};
// 			var t = window.MutationObserver || window.WebkitMutationObserver,
// 				s = new t(function (e) {
// 					e.forEach(function (e) {
// 						T.onResize(!0), T.emit("onObserverUpdate", T, e)
// 					})
// 				});
// 			s.observe(e, {
// 				attributes: void 0 === a.attributes || a.attributes,
// 				childList: void 0 === a.childList || a.childList,
// 				characterData: void 0 === a.characterData || a.characterData
// 			}), T.observers.push(s)
// 		}

// 		function p(e) {
// 			e.originalEvent && (e = e.originalEvent);
// 			var a = e.keyCode || e.charCode;
// 			if (!T.params.allowSwipeToNext && (T.isHorizontal() && 39 === a || !T.isHorizontal() && 40 === a)) return !1;
// 			if (!T.params.allowSwipeToPrev && (T.isHorizontal() && 37 === a || !T.isHorizontal() && 38 === a)) return !1;
// 			if (!(e.shiftKey || e.altKey || e.ctrlKey || e.metaKey || document.activeElement && document.activeElement.nodeName && ("input" === document.activeElement.nodeName.toLowerCase() || "textarea" === document.activeElement.nodeName.toLowerCase()))) {
// 				if (37 === a || 39 === a || 38 === a || 40 === a) {
// 					var t = !1;
// 					if (T.container.parents("." + T.params.slideClass).length > 0 && 0 === T.container.parents("." + T.params.slideActiveClass).length) return;
// 					var s = {
// 							left: window.pageXOffset,
// 							top: window.pageYOffset
// 						},
// 						i = window.innerWidth,
// 						r = window.innerHeight,
// 						n = T.container.offset();
// 					T.rtl && (n.left = n.left - T.container[0].scrollLeft);
// 					for (var o = [
// 							[n.left, n.top],
// 							[n.left + T.width, n.top],
// 							[n.left, n.top + T.height],
// 							[n.left + T.width, n.top + T.height]
// 						], l = 0; l < o.length; l++) {
// 						var p = o[l];
// 						p[0] >= s.left && p[0] <= s.left + i && p[1] >= s.top && p[1] <= s.top + r && (t = !0)
// 					}
// 					if (!t) return
// 				}
// 				T.isHorizontal() ? (37 !== a && 39 !== a || (e.preventDefault ? e.preventDefault() : e.returnValue = !1), (39 === a && !T.rtl || 37 === a && T.rtl) && T.slideNext(), (37 === a && !T.rtl || 39 === a && T.rtl) && T.slidePrev()) : (38 !== a && 40 !== a || (e.preventDefault ? e.preventDefault() : e.returnValue = !1), 40 === a && T.slideNext(), 38 === a && T.slidePrev()), T.emit("onKeyPress", T, a)
// 			}
// 		}

// 		function d(e) {
// 			var a = 0,
// 				t = 0,
// 				s = 0,
// 				i = 0;
// 			return "detail" in e && (t = e.detail), "wheelDelta" in e && (t = -e.wheelDelta / 120), "wheelDeltaY" in e && (t = -e.wheelDeltaY / 120), "wheelDeltaX" in e && (a = -e.wheelDeltaX / 120), "axis" in e && e.axis === e.HORIZONTAL_AXIS && (a = t, t = 0), s = 10 * a, i = 10 * t, "deltaY" in e && (i = e.deltaY), "deltaX" in e && (s = e.deltaX), (s || i) && e.deltaMode && (1 === e.deltaMode ? (s *= 40, i *= 40) : (s *= 800, i *= 800)), s && !a && (a = s < 1 ? -1 : 1), i && !t && (t = i < 1 ? -1 : 1), {
// 				spinX: a,
// 				spinY: t,
// 				pixelX: s,
// 				pixelY: i
// 			}
// 		}

// 		function u(e) {
// 			e.originalEvent && (e = e.originalEvent);
// 			var a = 0,
// 				t = T.rtl ? -1 : 1,
// 				s = d(e);
// 			if (T.params.mousewheelForceToAxis)
// 				if (T.isHorizontal()) {
// 					if (!(Math.abs(s.pixelX) > Math.abs(s.pixelY))) return;
// 					a = s.pixelX * t
// 				} else {
// 					if (!(Math.abs(s.pixelY) > Math.abs(s.pixelX))) return;
// 					a = s.pixelY
// 				}
// 			else a = Math.abs(s.pixelX) > Math.abs(s.pixelY) ? -s.pixelX * t : -s.pixelY;
// 			if (0 !== a) {
// 				if (T.params.mousewheelInvert && (a = -a), T.params.freeMode) {
// 					var i = T.getWrapperTranslate() + a * T.params.mousewheelSensitivity,
// 						r = T.isBeginning,
// 						n = T.isEnd;
// 					if (i >= T.minTranslate() && (i = T.minTranslate()), i <= T.maxTranslate() && (i = T.maxTranslate()), T.setWrapperTransition(0), T.setWrapperTranslate(i), T.updateProgress(), T.updateActiveIndex(), (!r && T.isBeginning || !n && T.isEnd) && T.updateClasses(), T.params.freeModeSticky ? (clearTimeout(T.mousewheel.timeout), T.mousewheel.timeout = setTimeout(function () {
// 							T.slideReset()
// 						}, 300)) : T.params.lazyLoading && T.lazy && T.lazy.load(), T.emit("onScroll", T, e), T.params.autoplay && T.params.autoplayDisableOnInteraction && T.stopAutoplay(), 0 === i || i === T.maxTranslate()) return
// 				} else {
// 					if ((new window.Date).getTime() - T.mousewheel.lastScrollTime > 60)
// 						if (a < 0)
// 							if (T.isEnd && !T.params.loop || T.animating) {
// 								if (T.params.mousewheelReleaseOnEdges) return !0
// 							} else T.slideNext(), T.emit("onScroll", T, e);
// 					else if (T.isBeginning && !T.params.loop || T.animating) {
// 						if (T.params.mousewheelReleaseOnEdges) return !0
// 					} else T.slidePrev(), T.emit("onScroll", T, e);
// 					T.mousewheel.lastScrollTime = (new window.Date).getTime()
// 				}
// 				return e.preventDefault ? e.preventDefault() : e.returnValue = !1, !1
// 			}
// 		}

// 		function c(a, t) {
// 			a = e(a);
// 			var s, i, r, n = T.rtl ? -1 : 1;
// 			s = a.attr("data-swiper-parallax") || "0", i = a.attr("data-swiper-parallax-x"), r = a.attr("data-swiper-parallax-y"), i || r ? (i = i || "0", r = r || "0") : T.isHorizontal() ? (i = s, r = "0") : (r = s, i = "0"), i = i.indexOf("%") >= 0 ? parseInt(i, 10) * t * n + "%" : i * t * n + "px", r = r.indexOf("%") >= 0 ? parseInt(r, 10) * t + "%" : r * t + "px", a.transform("translate3d(" + i + ", " + r + ",0px)")
// 		}

// 		function m(e) {
// 			return 0 !== e.indexOf("on") && (e = e[0] !== e[0].toUpperCase() ? "on" + e[0].toUpperCase() + e.substring(1) : "on" + e), e
// 		}
// 		if (!(this instanceof a)) return new a(s, i);
// 		var h = {
// 				direction: "horizontal",
// 				touchEventsTarget: "container",
// 				initialSlide: 0,
// 				speed: 300,
// 				autoplay: !1,
// 				autoplayDisableOnInteraction: !0,
// 				autoplayStopOnLast: !1,
// 				iOSEdgeSwipeDetection: !1,
// 				iOSEdgeSwipeThreshold: 20,
// 				freeMode: !1,
// 				freeModeMomentum: !0,
// 				freeModeMomentumRatio: 1,
// 				freeModeMomentumBounce: !0,
// 				freeModeMomentumBounceRatio: 1,
// 				freeModeMomentumVelocityRatio: 1,
// 				freeModeSticky: !1,
// 				freeModeMinimumVelocity: .02,
// 				autoHeight: !1,
// 				setWrapperSize: !1,
// 				virtualTranslate: !1,
// 				effect: "slide",
// 				coverflow: {
// 					rotate: 50,
// 					stretch: 0,
// 					depth: 100,
// 					modifier: 1,
// 					slideShadows: !0
// 				},
// 				flip: {
// 					slideShadows: !0,
// 					limitRotation: !0
// 				},
// 				cube: {
// 					slideShadows: !0,
// 					shadow: !0,
// 					shadowOffset: 20,
// 					shadowScale: .94
// 				},
// 				fade: {
// 					crossFade: !1
// 				},
// 				parallax: !1,
// 				zoom: !1,
// 				zoomMax: 3,
// 				zoomMin: 1,
// 				zoomToggle: !0,
// 				scrollbar: null,
// 				scrollbarHide: !0,
// 				scrollbarDraggable: !1,
// 				scrollbarSnapOnRelease: !1,
// 				keyboardControl: !1,
// 				mousewheelControl: !1,
// 				mousewheelReleaseOnEdges: !1,
// 				mousewheelInvert: !1,
// 				mousewheelForceToAxis: !1,
// 				mousewheelSensitivity: 1,
// 				mousewheelEventsTarged: "container",
// 				hashnav: !1,
// 				hashnavWatchState: !1,
// 				history: !1,
// 				replaceState: !1,
// 				breakpoints: void 0,
// 				spaceBetween: 0,
// 				slidesPerView: 1,
// 				slidesPerColumn: 1,
// 				slidesPerColumnFill: "column",
// 				slidesPerGroup: 1,
// 				centeredSlides: !1,
// 				slidesOffsetBefore: 0,
// 				slidesOffsetAfter: 0,
// 				roundLengths: !1,
// 				touchRatio: 1,
// 				touchAngle: 45,
// 				simulateTouch: !0,
// 				shortSwipes: !0,
// 				longSwipes: !0,
// 				longSwipesRatio: .5,
// 				longSwipesMs: 300,
// 				followFinger: !0,
// 				onlyExternal: !1,
// 				threshold: 0,
// 				touchMoveStopPropagation: !0,
// 				touchReleaseOnEdges: !1,
// 				uniqueNavElements: !0,
// 				pagination: null,
// 				paginationElement: "span",
// 				paginationClickable: !1,
// 				paginationHide: !1,
// 				paginationBulletRender: null,
// 				paginationProgressRender: null,
// 				paginationFractionRender: null,
// 				paginationCustomRender: null,
// 				paginationType: "bullets",
// 				resistance: !0,
// 				resistanceRatio: .85,
// 				nextButton: null,
// 				prevButton: null,
// 				watchSlidesProgress: !1,
// 				watchSlidesVisibility: !1,
// 				grabCursor: !1,
// 				preventClicks: !0,
// 				preventClicksPropagation: !0,
// 				slideToClickedSlide: !1,
// 				lazyLoading: !1,
// 				lazyLoadingInPrevNext: !1,
// 				lazyLoadingInPrevNextAmount: 1,
// 				lazyLoadingOnTransitionStart: !1,
// 				preloadImages: !0,
// 				updateOnImagesReady: !0,
// 				loop: !1,
// 				loopAdditionalSlides: 0,
// 				loopedSlides: null,
// 				control: void 0,
// 				controlInverse: !1,
// 				controlBy: "slide",
// 				normalizeSlideIndex: !0,
// 				allowSwipeToPrev: !0,
// 				allowSwipeToNext: !0,
// 				swipeHandler: null,
// 				noSwiping: !0,
// 				noSwipingClass: "swiper-no-swiping",
// 				passiveListeners: !0,
// 				containerModifierClass: "swiper-container-",
// 				slideClass: "swiper-slide",
// 				slideActiveClass: "swiper-slide-active",
// 				slideDuplicateActiveClass: "swiper-slide-duplicate-active",
// 				slideVisibleClass: "swiper-slide-visible",
// 				slideDuplicateClass: "swiper-slide-duplicate",
// 				slideNextClass: "swiper-slide-next",
// 				slideDuplicateNextClass: "swiper-slide-duplicate-next",
// 				slidePrevClass: "swiper-slide-prev",
// 				slideDuplicatePrevClass: "swiper-slide-duplicate-prev",
// 				wrapperClass: "swiper-wrapper",
// 				bulletClass: "swiper-pagination-bullet",
// 				bulletActiveClass: "swiper-pagination-bullet-active",
// 				buttonDisabledClass: "swiper-button-disabled",
// 				paginationCurrentClass: "swiper-pagination-current",
// 				paginationTotalClass: "swiper-pagination-total",
// 				paginationHiddenClass: "swiper-pagination-hidden",
// 				paginationProgressbarClass: "swiper-pagination-progressbar",
// 				paginationClickableClass: "swiper-pagination-clickable",
// 				paginationModifierClass: "swiper-pagination-",
// 				lazyLoadingClass: "swiper-lazy",
// 				lazyStatusLoadingClass: "swiper-lazy-loading",
// 				lazyStatusLoadedClass: "swiper-lazy-loaded",
// 				lazyPreloaderClass: "swiper-lazy-preloader",
// 				notificationClass: "swiper-notification",
// 				preloaderClass: "preloader",
// 				zoomContainerClass: "swiper-zoom-container",
// 				observer: !1,
// 				observeParents: !1,
// 				a11y: !1,
// 				prevSlideMessage: "Previous slide",
// 				nextSlideMessage: "Next slide",
// 				firstSlideMessage: "This is the first slide",
// 				lastSlideMessage: "This is the last slide",
// 				paginationBulletMessage: "Go to slide {{index}}",
// 				runCallbacksOnInit: !0
// 			},
// 			g = i && i.virtualTranslate;
// 		i = i || {};
// 		var f = {};
// 		for (var v in i)
// 			if ("object" != typeof i[v] || null === i[v] || (i[v].nodeType || i[v] === window || i[v] === document || void 0 !== t && i[v] instanceof t || "undefined" != typeof jQuery && i[v] instanceof jQuery)) f[v] = i[v];
// 			else {
// 				f[v] = {};
// 				for (var w in i[v]) f[v][w] = i[v][w]
// 			}
// 		for (var y in h)
// 			if (void 0 === i[y]) i[y] = h[y];
// 			else if ("object" == typeof i[y])
// 			for (var x in h[y]) void 0 === i[y][x] && (i[y][x] = h[y][x]);
// 		var T = this;
// 		if (T.params = i, T.originalParams = f, T.classNames = [], void 0 !== e && void 0 !== t && (e = t), (void 0 !== e || (e = void 0 === t ? window.Dom7 || window.Zepto || window.jQuery : t)) && (T.$ = e, T.currentBreakpoint = void 0, T.getActiveBreakpoint = function () {
// 				if (!T.params.breakpoints) return !1;
// 				var e, a = !1,
// 					t = [];
// 				for (e in T.params.breakpoints) T.params.breakpoints.hasOwnProperty(e) && t.push(e);
// 				t.sort(function (e, a) {
// 					return parseInt(e, 10) > parseInt(a, 10)
// 				});
// 				for (var s = 0; s < t.length; s++)(e = t[s]) >= window.innerWidth && !a && (a = e);
// 				return a || "max"
// 			}, T.setBreakpoint = function () {
// 				var e = T.getActiveBreakpoint();
// 				if (e && T.currentBreakpoint !== e) {
// 					var a = e in T.params.breakpoints ? T.params.breakpoints[e] : T.originalParams,
// 						t = T.params.loop && a.slidesPerView !== T.params.slidesPerView;
// 					for (var s in a) T.params[s] = a[s];
// 					T.currentBreakpoint = e, t && T.destroyLoop && T.reLoop(!0)
// 				}
// 			}, T.params.breakpoints && T.setBreakpoint(), T.container = e(s), 0 !== T.container.length)) {
// 			if (T.container.length > 1) {
// 				var b = [];
// 				return T.container.each(function () {
// 					b.push(new a(this, i))
// 				}), b
// 			}
// 			T.container[0].swiper = T, T.container.data("swiper", T), T.classNames.push(T.params.containerModifierClass + T.params.direction), T.params.freeMode && T.classNames.push(T.params.containerModifierClass + "free-mode"), T.support.flexbox || (T.classNames.push(T.params.containerModifierClass + "no-flexbox"), T.params.slidesPerColumn = 1), T.params.autoHeight && T.classNames.push(T.params.containerModifierClass + "autoheight"), (T.params.parallax || T.params.watchSlidesVisibility) && (T.params.watchSlidesProgress = !0), T.params.touchReleaseOnEdges && (T.params.resistanceRatio = 0), ["cube", "coverflow", "flip"].indexOf(T.params.effect) >= 0 && (T.support.transforms3d ? (T.params.watchSlidesProgress = !0, T.classNames.push(T.params.containerModifierClass + "3d")) : T.params.effect = "slide"), "slide" !== T.params.effect && T.classNames.push(T.params.containerModifierClass + T.params.effect), "cube" === T.params.effect && (T.params.resistanceRatio = 0, T.params.slidesPerView = 1, T.params.slidesPerColumn = 1, T.params.slidesPerGroup = 1, T.params.centeredSlides = !1, T.params.spaceBetween = 0, T.params.virtualTranslate = !0), "fade" !== T.params.effect && "flip" !== T.params.effect || (T.params.slidesPerView = 1, T.params.slidesPerColumn = 1, T.params.slidesPerGroup = 1, T.params.watchSlidesProgress = !0, T.params.spaceBetween = 0, void 0 === g && (T.params.virtualTranslate = !0)), T.params.grabCursor && T.support.touch && (T.params.grabCursor = !1), T.wrapper = T.container.children("." + T.params.wrapperClass), T.params.pagination && (T.paginationContainer = e(T.params.pagination), T.params.uniqueNavElements && "string" == typeof T.params.pagination && T.paginationContainer.length > 1 && 1 === T.container.find(T.params.pagination).length && (T.paginationContainer = T.container.find(T.params.pagination)), "bullets" === T.params.paginationType && T.params.paginationClickable ? T.paginationContainer.addClass(T.params.paginationModifierClass + "clickable") : T.params.paginationClickable = !1, T.paginationContainer.addClass(T.params.paginationModifierClass + T.params.paginationType)), (T.params.nextButton || T.params.prevButton) && (T.params.nextButton && (T.nextButton = e(T.params.nextButton), T.params.uniqueNavElements && "string" == typeof T.params.nextButton && T.nextButton.length > 1 && 1 === T.container.find(T.params.nextButton).length && (T.nextButton = T.container.find(T.params.nextButton))), T.params.prevButton && (T.prevButton = e(T.params.prevButton), T.params.uniqueNavElements && "string" == typeof T.params.prevButton && T.prevButton.length > 1 && 1 === T.container.find(T.params.prevButton).length && (T.prevButton = T.container.find(T.params.prevButton)))), T.isHorizontal = function () {
// 					return "horizontal" === T.params.direction
// 				}, T.rtl = T.isHorizontal() && ("rtl" === T.container[0].dir.toLowerCase() || "rtl" === T.container.css("direction")), T.rtl && T.classNames.push(T.params.containerModifierClass + "rtl"), T.rtl && (T.wrongRTL = "-webkit-box" === T.wrapper.css("display")), T.params.slidesPerColumn > 1 && T.classNames.push(T.params.containerModifierClass + "multirow"), T.device.android && T.classNames.push(T.params.containerModifierClass + "android"), T.container.addClass(T.classNames.join(" ")), T.translate = 0, T.progress = 0, T.velocity = 0, T.lockSwipeToNext = function () {
// 					T.params.allowSwipeToNext = !1, T.params.allowSwipeToPrev === !1 && T.params.grabCursor && T.unsetGrabCursor()
// 				}, T.lockSwipeToPrev = function () {
// 					T.params.allowSwipeToPrev = !1, T.params.allowSwipeToNext === !1 && T.params.grabCursor && T.unsetGrabCursor()
// 				}, T.lockSwipes = function () {
// 					T.params.allowSwipeToNext = T.params.allowSwipeToPrev = !1, T.params.grabCursor && T.unsetGrabCursor()
// 				}, T.unlockSwipeToNext = function () {
// 					T.params.allowSwipeToNext = !0, T.params.allowSwipeToPrev === !0 && T.params.grabCursor && T.setGrabCursor()
// 				}, T.unlockSwipeToPrev = function () {
// 					T.params.allowSwipeToPrev = !0, T.params.allowSwipeToNext === !0 && T.params.grabCursor && T.setGrabCursor()
// 				}, T.unlockSwipes = function () {
// 					T.params.allowSwipeToNext = T.params.allowSwipeToPrev = !0, T.params.grabCursor && T.setGrabCursor()
// 				}, T.setGrabCursor = function (e) {
// 					T.container[0].style.cursor = "move", T.container[0].style.cursor = e ? "-webkit-grabbing" : "-webkit-grab", T.container[0].style.cursor = e ? "-moz-grabbin" : "-moz-grab", T.container[0].style.cursor = e ? "grabbing" : "grab"
// 				}, T.unsetGrabCursor = function () {
// 					T.container[0].style.cursor = ""
// 				}, T.params.grabCursor && T.setGrabCursor(), T.imagesToLoad = [], T.imagesLoaded = 0, T.loadImage = function (e, a, t, s, i, r) {
// 					function n() {
// 						r && r()
// 					}
// 					var o;
// 					e.complete && i ? n() : a ? (o = new window.Image, o.onload = n, o.onerror = n, s && (o.sizes = s), t && (o.srcset = t), a && (o.src = a)) : n()
// 				}, T.preloadImages = function () {
// 					function e() {
// 						void 0 !== T && null !== T && T && (void 0 !== T.imagesLoaded && T.imagesLoaded++, T.imagesLoaded === T.imagesToLoad.length && (T.params.updateOnImagesReady && T.update(), T.emit("onImagesReady", T)))
// 					}
// 					T.imagesToLoad = T.container.find("img");
// 					for (var a = 0; a < T.imagesToLoad.length; a++) T.loadImage(T.imagesToLoad[a], T.imagesToLoad[a].currentSrc || T.imagesToLoad[a].getAttribute("src"), T.imagesToLoad[a].srcset || T.imagesToLoad[a].getAttribute("srcset"), T.imagesToLoad[a].sizes || T.imagesToLoad[a].getAttribute("sizes"), !0, e)
// 				}, T.autoplayTimeoutId = void 0, T.autoplaying = !1, T.autoplayPaused = !1, T.startAutoplay = function () {
// 					return void 0 === T.autoplayTimeoutId && (!!T.params.autoplay && (!T.autoplaying && (T.autoplaying = !0, T.emit("onAutoplayStart", T), void n())))
// 				}, T.stopAutoplay = function (e) {
// 					T.autoplayTimeoutId && (T.autoplayTimeoutId && clearTimeout(T.autoplayTimeoutId), T.autoplaying = !1, T.autoplayTimeoutId = void 0, T.emit("onAutoplayStop", T))
// 				}, T.pauseAutoplay = function (e) {
// 					T.autoplayPaused || (T.autoplayTimeoutId && clearTimeout(T.autoplayTimeoutId), T.autoplayPaused = !0, 0 === e ? (T.autoplayPaused = !1, n()) : T.wrapper.transitionEnd(function () {
// 						T && (T.autoplayPaused = !1, T.autoplaying ? n() : T.stopAutoplay())
// 					}))
// 				}, T.minTranslate = function () {
// 					return -T.snapGrid[0]
// 				}, T.maxTranslate = function () {
// 					return -T.snapGrid[T.snapGrid.length - 1]
// 				}, T.updateAutoHeight = function () {
// 					var e, a = [],
// 						t = 0;
// 					if ("auto" !== T.params.slidesPerView && T.params.slidesPerView > 1)
// 						for (e = 0; e < Math.ceil(T.params.slidesPerView); e++) {
// 							var s = T.activeIndex + e;
// 							if (s > T.slides.length) break;
// 							a.push(T.slides.eq(s)[0])
// 						} else a.push(T.slides.eq(T.activeIndex)[0]);
// 					for (e = 0; e < a.length; e++)
// 						if (void 0 !== a[e]) {
// 							var i = a[e].offsetHeight;
// 							t = i > t ? i : t
// 						}
// 					t && T.wrapper.css("height", t + "px")
// 				}, T.updateContainerSize = function () {
// 					var e, a;
// 					e = void 0 !== T.params.width ? T.params.width : T.container[0].clientWidth, a = void 0 !== T.params.height ? T.params.height : T.container[0].clientHeight, 0 === e && T.isHorizontal() || 0 === a && !T.isHorizontal() || (e = e - parseInt(T.container.css("padding-left"), 10) - parseInt(T.container.css("padding-right"), 10), a = a - parseInt(T.container.css("padding-top"), 10) - parseInt(T.container.css("padding-bottom"), 10), T.width = e, T.height = a, T.size = T.isHorizontal() ? T.width : T.height)
// 				}, T.updateSlidesSize = function () {
// 					T.slides = T.wrapper.children("." + T.params.slideClass), T.snapGrid = [], T.slidesGrid = [], T.slidesSizesGrid = [];
// 					var e, a = T.params.spaceBetween,
// 						t = -T.params.slidesOffsetBefore,
// 						s = 0,
// 						i = 0;
// 					if (void 0 !== T.size) {
// 						"string" == typeof a && a.indexOf("%") >= 0 && (a = parseFloat(a.replace("%", "")) / 100 * T.size), T.virtualSize = -a, T.rtl ? T.slides.css({
// 							marginLeft: "",
// 							marginTop: ""
// 						}) : T.slides.css({
// 							marginRight: "",
// 							marginBottom: ""
// 						});
// 						var n;
// 						T.params.slidesPerColumn > 1 && (n = Math.floor(T.slides.length / T.params.slidesPerColumn) === T.slides.length / T.params.slidesPerColumn ? T.slides.length : Math.ceil(T.slides.length / T.params.slidesPerColumn) * T.params.slidesPerColumn, "auto" !== T.params.slidesPerView && "row" === T.params.slidesPerColumnFill && (n = Math.max(n, T.params.slidesPerView * T.params.slidesPerColumn)));
// 						var o, l = T.params.slidesPerColumn,
// 							p = n / l,
// 							d = p - (T.params.slidesPerColumn * p - T.slides.length);
// 						for (e = 0; e < T.slides.length; e++) {
// 							o = 0;
// 							var u = T.slides.eq(e);
// 							if (T.params.slidesPerColumn > 1) {
// 								var c, m, h;
// 								"column" === T.params.slidesPerColumnFill ? (m = Math.floor(e / l), h = e - m * l, (m > d || m === d && h === l - 1) && ++h >= l && (h = 0, m++), c = m + h * n / l, u.css({
// 									"-webkit-box-ordinal-group": c,
// 									"-moz-box-ordinal-group": c,
// 									"-ms-flex-order": c,
// 									"-webkit-order": c,
// 									order: c
// 								})) : (h = Math.floor(e / p), m = e - h * p), u.css("margin-" + (T.isHorizontal() ? "top" : "left"), 0 !== h && T.params.spaceBetween && T.params.spaceBetween + "px").attr("data-swiper-column", m).attr("data-swiper-row", h)
// 							}
// 							"none" !== u.css("display") && ("auto" === T.params.slidesPerView ? (o = T.isHorizontal() ? u.outerWidth(!0) : u.outerHeight(!0), T.params.roundLengths && (o = r(o))) : (o = (T.size - (T.params.slidesPerView - 1) * a) / T.params.slidesPerView, T.params.roundLengths && (o = r(o)), T.isHorizontal() ? T.slides[e].style.width = o + "px" : T.slides[e].style.height = o + "px"), T.slides[e].swiperSlideSize = o, T.slidesSizesGrid.push(o), T.params.centeredSlides ? (t = t + o / 2 + s / 2 + a, 0 === s && 0 !== e && (t = t - T.size / 2 - a), 0 === e && (t = t - T.size / 2 - a), Math.abs(t) < .001 && (t = 0), i % T.params.slidesPerGroup == 0 && T.snapGrid.push(t), T.slidesGrid.push(t)) : (i % T.params.slidesPerGroup == 0 && T.snapGrid.push(t), T.slidesGrid.push(t), t = t + o + a), T.virtualSize += o + a, s = o, i++)
// 						}
// 						T.virtualSize = Math.max(T.virtualSize, T.size) + T.params.slidesOffsetAfter;
// 						var g;
// 						if (T.rtl && T.wrongRTL && ("slide" === T.params.effect || "coverflow" === T.params.effect) && T.wrapper.css({
// 								width: T.virtualSize + T.params.spaceBetween + "px"
// 							}), T.support.flexbox && !T.params.setWrapperSize || (T.isHorizontal() ? T.wrapper.css({
// 								width: T.virtualSize + T.params.spaceBetween + "px"
// 							}) : T.wrapper.css({
// 								height: T.virtualSize + T.params.spaceBetween + "px"
// 							})), T.params.slidesPerColumn > 1 && (T.virtualSize = (o + T.params.spaceBetween) * n, T.virtualSize = Math.ceil(T.virtualSize / T.params.slidesPerColumn) - T.params.spaceBetween, T.isHorizontal() ? T.wrapper.css({
// 								width: T.virtualSize + T.params.spaceBetween + "px"
// 							}) : T.wrapper.css({
// 								height: T.virtualSize + T.params.spaceBetween + "px"
// 							}), T.params.centeredSlides)) {
// 							for (g = [], e = 0; e < T.snapGrid.length; e++) T.snapGrid[e] < T.virtualSize + T.snapGrid[0] && g.push(T.snapGrid[e]);
// 							T.snapGrid = g
// 						}
// 						if (!T.params.centeredSlides) {
// 							for (g = [], e = 0; e < T.snapGrid.length; e++) T.snapGrid[e] <= T.virtualSize - T.size && g.push(T.snapGrid[e]);
// 							T.snapGrid = g, Math.floor(T.virtualSize - T.size) - Math.floor(T.snapGrid[T.snapGrid.length - 1]) > 1 && T.snapGrid.push(T.virtualSize - T.size)
// 						}
// 						0 === T.snapGrid.length && (T.snapGrid = [0]), 0 !== T.params.spaceBetween && (T.isHorizontal() ? T.rtl ? T.slides.css({
// 							marginLeft: a + "px"
// 						}) : T.slides.css({
// 							marginRight: a + "px"
// 						}) : T.slides.css({
// 							marginBottom: a + "px"
// 						})), T.params.watchSlidesProgress && T.updateSlidesOffset()
// 					}
// 				}, T.updateSlidesOffset = function () {
// 					for (var e = 0; e < T.slides.length; e++) T.slides[e].swiperSlideOffset = T.isHorizontal() ? T.slides[e].offsetLeft : T.slides[e].offsetTop
// 				}, T.currentSlidesPerView = function () {
// 					var e, a, t = 1;
// 					if (T.params.centeredSlides) {
// 						var s, i = T.slides[T.activeIndex].swiperSlideSize;
// 						for (e = T.activeIndex + 1; e < T.slides.length; e++) T.slides[e] && !s && (i += T.slides[e].swiperSlideSize, t++, i > T.size && (s = !0));
// 						for (a = T.activeIndex - 1; a >= 0; a--) T.slides[a] && !s && (i += T.slides[a].swiperSlideSize, t++, i > T.size && (s = !0))
// 					} else
// 						for (e = T.activeIndex + 1; e < T.slides.length; e++) T.slidesGrid[e] - T.slidesGrid[T.activeIndex] < T.size && t++;
// 					return t
// 				}, T.updateSlidesProgress = function (e) {
// 					if (void 0 === e && (e = T.translate || 0), 0 !== T.slides.length) {
// 						void 0 === T.slides[0].swiperSlideOffset && T.updateSlidesOffset();
// 						var a = -e;
// 						T.rtl && (a = e), T.slides.removeClass(T.params.slideVisibleClass);
// 						for (var t = 0; t < T.slides.length; t++) {
// 							var s = T.slides[t],
// 								i = (a + (T.params.centeredSlides ? T.minTranslate() : 0) - s.swiperSlideOffset) / (s.swiperSlideSize + T.params.spaceBetween);
// 							if (T.params.watchSlidesVisibility) {
// 								var r = -(a - s.swiperSlideOffset),
// 									n = r + T.slidesSizesGrid[t];
// 								(r >= 0 && r < T.size || n > 0 && n <= T.size || r <= 0 && n >= T.size) && T.slides.eq(t).addClass(T.params.slideVisibleClass)
// 							}
// 							s.progress = T.rtl ? -i : i
// 						}
// 					}
// 				}, T.updateProgress = function (e) {
// 					void 0 === e && (e = T.translate || 0);
// 					var a = T.maxTranslate() - T.minTranslate(),
// 						t = T.isBeginning,
// 						s = T.isEnd;
// 					0 === a ? (T.progress = 0, T.isBeginning = T.isEnd = !0) : (T.progress = (e - T.minTranslate()) / a, T.isBeginning = T.progress <= 0, T.isEnd = T.progress >= 1), T.isBeginning && !t && T.emit("onReachBeginning", T), T.isEnd && !s && T.emit("onReachEnd", T), T.params.watchSlidesProgress && T.updateSlidesProgress(e), T.emit("onProgress", T, T.progress)
// 				}, T.updateActiveIndex = function () {
// 					var e, a, t, s = T.rtl ? T.translate : -T.translate;
// 					for (a = 0; a < T.slidesGrid.length; a++) void 0 !== T.slidesGrid[a + 1] ? s >= T.slidesGrid[a] && s < T.slidesGrid[a + 1] - (T.slidesGrid[a + 1] - T.slidesGrid[a]) / 2 ? e = a : s >= T.slidesGrid[a] && s < T.slidesGrid[a + 1] && (e = a + 1) : s >= T.slidesGrid[a] && (e = a);
// 					T.params.normalizeSlideIndex && (e < 0 || void 0 === e) && (e = 0), t = Math.floor(e / T.params.slidesPerGroup), t >= T.snapGrid.length && (t = T.snapGrid.length - 1), e !== T.activeIndex && (T.snapIndex = t, T.previousIndex = T.activeIndex, T.activeIndex = e, T.updateClasses(), T.updateRealIndex())
// 				}, T.updateRealIndex = function () {
// 					T.realIndex = parseInt(T.slides.eq(T.activeIndex).attr("data-swiper-slide-index") || T.activeIndex, 10)
// 				}, T.updateClasses = function () {
// 					T.slides.removeClass(T.params.slideActiveClass + " " + T.params.slideNextClass + " " + T.params.slidePrevClass + " " + T.params.slideDuplicateActiveClass + " " + T.params.slideDuplicateNextClass + " " + T.params.slideDuplicatePrevClass);
// 					var a = T.slides.eq(T.activeIndex);
// 					a.addClass(T.params.slideActiveClass), i.loop && (a.hasClass(T.params.slideDuplicateClass) ? T.wrapper.children("." + T.params.slideClass + ":not(." + T.params.slideDuplicateClass + ')[data-swiper-slide-index="' + T.realIndex + '"]').addClass(T.params.slideDuplicateActiveClass) : T.wrapper.children("." + T.params.slideClass + "." + T.params.slideDuplicateClass + '[data-swiper-slide-index="' + T.realIndex + '"]').addClass(T.params.slideDuplicateActiveClass));
// 					var t = a.next("." + T.params.slideClass).addClass(T.params.slideNextClass);
// 					T.params.loop && 0 === t.length && (t = T.slides.eq(0), t.addClass(T.params.slideNextClass));
// 					var s = a.prev("." + T.params.slideClass).addClass(T.params.slidePrevClass);
// 					if (T.params.loop && 0 === s.length && (s = T.slides.eq(-1), s.addClass(T.params.slidePrevClass)), i.loop && (t.hasClass(T.params.slideDuplicateClass) ? T.wrapper.children("." + T.params.slideClass + ":not(." + T.params.slideDuplicateClass + ')[data-swiper-slide-index="' + t.attr("data-swiper-slide-index") + '"]').addClass(T.params.slideDuplicateNextClass) : T.wrapper.children("." + T.params.slideClass + "." + T.params.slideDuplicateClass + '[data-swiper-slide-index="' + t.attr("data-swiper-slide-index") + '"]').addClass(T.params.slideDuplicateNextClass), s.hasClass(T.params.slideDuplicateClass) ? T.wrapper.children("." + T.params.slideClass + ":not(." + T.params.slideDuplicateClass + ')[data-swiper-slide-index="' + s.attr("data-swiper-slide-index") + '"]').addClass(T.params.slideDuplicatePrevClass) : T.wrapper.children("." + T.params.slideClass + "." + T.params.slideDuplicateClass + '[data-swiper-slide-index="' + s.attr("data-swiper-slide-index") + '"]').addClass(T.params.slideDuplicatePrevClass)), T.paginationContainer && T.paginationContainer.length > 0) {
// 						var r, n = T.params.loop ? Math.ceil((T.slides.length - 2 * T.loopedSlides) / T.params.slidesPerGroup) : T.snapGrid.length;
// 						if (T.params.loop ? (r = Math.ceil((T.activeIndex - T.loopedSlides) / T.params.slidesPerGroup), r > T.slides.length - 1 - 2 * T.loopedSlides && (r -= T.slides.length - 2 * T.loopedSlides), r > n - 1 && (r -= n), r < 0 && "bullets" !== T.params.paginationType && (r = n + r)) : r = void 0 !== T.snapIndex ? T.snapIndex : T.activeIndex || 0, "bullets" === T.params.paginationType && T.bullets && T.bullets.length > 0 && (T.bullets.removeClass(T.params.bulletActiveClass), T.paginationContainer.length > 1 ? T.bullets.each(function () {
// 								e(this).index() === r && e(this).addClass(T.params.bulletActiveClass)
// 							}) : T.bullets.eq(r).addClass(T.params.bulletActiveClass)), "fraction" === T.params.paginationType && (T.paginationContainer.find("." + T.params.paginationCurrentClass).text(r + 1), T.paginationContainer.find("." + T.params.paginationTotalClass).text(n)), "progress" === T.params.paginationType) {
// 							var o = (r + 1) / n,
// 								l = o,
// 								p = 1;
// 							T.isHorizontal() || (p = o, l = 1), T.paginationContainer.find("." + T.params.paginationProgressbarClass).transform("translate3d(0,0,0) scaleX(" + l + ") scaleY(" + p + ")").transition(T.params.speed)
// 						}
// 						"custom" === T.params.paginationType && T.params.paginationCustomRender && (T.paginationContainer.html(T.params.paginationCustomRender(T, r + 1, n)), T.emit("onPaginationRendered", T, T.paginationContainer[0]))
// 					}
// 					T.params.loop || (T.params.prevButton && T.prevButton && T.prevButton.length > 0 && (T.isBeginning ? (T.prevButton.addClass(T.params.buttonDisabledClass), T.params.a11y && T.a11y && T.a11y.disable(T.prevButton)) : (T.prevButton.removeClass(T.params.buttonDisabledClass), T.params.a11y && T.a11y && T.a11y.enable(T.prevButton))), T.params.nextButton && T.nextButton && T.nextButton.length > 0 && (T.isEnd ? (T.nextButton.addClass(T.params.buttonDisabledClass), T.params.a11y && T.a11y && T.a11y.disable(T.nextButton)) : (T.nextButton.removeClass(T.params.buttonDisabledClass), T.params.a11y && T.a11y && T.a11y.enable(T.nextButton))))
// 				}, T.updatePagination = function () {
// 					if (T.params.pagination && T.paginationContainer && T.paginationContainer.length > 0) {
// 						var e = "";
// 						if ("bullets" === T.params.paginationType) {
// 							for (var a = T.params.loop ? Math.ceil((T.slides.length - 2 * T.loopedSlides) / T.params.slidesPerGroup) : T.snapGrid.length, t = 0; t < a; t++) e += T.params.paginationBulletRender ? T.params.paginationBulletRender(T, t, T.params.bulletClass) : "<" + T.params.paginationElement + ' class="' + T.params.bulletClass + '"></' + T.params.paginationElement + ">";
// 							T.paginationContainer.html(e), T.bullets = T.paginationContainer.find("." + T.params.bulletClass), T.params.paginationClickable && T.params.a11y && T.a11y && T.a11y.initPagination()
// 						}
// 						"fraction" === T.params.paginationType && (e = T.params.paginationFractionRender ? T.params.paginationFractionRender(T, T.params.paginationCurrentClass, T.params.paginationTotalClass) : '<span class="' + T.params.paginationCurrentClass + '"></span> / <span class="' + T.params.paginationTotalClass + '"></span>', T.paginationContainer.html(e)), "progress" === T.params.paginationType && (e = T.params.paginationProgressRender ? T.params.paginationProgressRender(T, T.params.paginationProgressbarClass) : '<span class="' + T.params.paginationProgressbarClass + '"></span>', T.paginationContainer.html(e)), "custom" !== T.params.paginationType && T.emit("onPaginationRendered", T, T.paginationContainer[0])
// 					}
// 				}, T.update = function (e) {
// 					function a() {
// 						T.rtl, T.translate;
// 						t = Math.min(Math.max(T.translate, T.maxTranslate()), T.minTranslate()), T.setWrapperTranslate(t), T.updateActiveIndex(), T.updateClasses()
// 					}
// 					if (T) {
// 						T.updateContainerSize(), T.updateSlidesSize(), T.updateProgress(), T.updatePagination(), T.updateClasses(), T.params.scrollbar && T.scrollbar && T.scrollbar.set();
// 						var t;
// 						if (e) {
// 							T.controller && T.controller.spline && (T.controller.spline = void 0), T.params.freeMode ? (a(), T.params.autoHeight && T.updateAutoHeight()) : (("auto" === T.params.slidesPerView || T.params.slidesPerView > 1) && T.isEnd && !T.params.centeredSlides ? T.slideTo(T.slides.length - 1, 0, !1, !0) : T.slideTo(T.activeIndex, 0, !1, !0)) || a()
// 						} else T.params.autoHeight && T.updateAutoHeight()
// 					}
// 				}, T.onResize = function (e) {
// 					T.params.onBeforeResize && T.params.onBeforeResize(T), T.params.breakpoints && T.setBreakpoint();
// 					var a = T.params.allowSwipeToPrev,
// 						t = T.params.allowSwipeToNext;
// 					T.params.allowSwipeToPrev = T.params.allowSwipeToNext = !0, T.updateContainerSize(), T.updateSlidesSize(), ("auto" === T.params.slidesPerView || T.params.freeMode || e) && T.updatePagination(), T.params.scrollbar && T.scrollbar && T.scrollbar.set(), T.controller && T.controller.spline && (T.controller.spline = void 0);
// 					var s = !1;
// 					if (T.params.freeMode) {
// 						var i = Math.min(Math.max(T.translate, T.maxTranslate()), T.minTranslate());
// 						T.setWrapperTranslate(i), T.updateActiveIndex(), T.updateClasses(), T.params.autoHeight && T.updateAutoHeight()
// 					} else T.updateClasses(), s = ("auto" === T.params.slidesPerView || T.params.slidesPerView > 1) && T.isEnd && !T.params.centeredSlides ? T.slideTo(T.slides.length - 1, 0, !1, !0) : T.slideTo(T.activeIndex, 0, !1, !0);
// 					T.params.lazyLoading && !s && T.lazy && T.lazy.load(), T.params.allowSwipeToPrev = a, T.params.allowSwipeToNext = t, T.params.onAfterResize && T.params.onAfterResize(T)
// 				}, T.touchEventsDesktop = {
// 					start: "mousedown",
// 					move: "mousemove",
// 					end: "mouseup"
// 				}, window.navigator.pointerEnabled ? T.touchEventsDesktop = {
// 					start: "pointerdown",
// 					move: "pointermove",
// 					end: "pointerup"
// 				} : window.navigator.msPointerEnabled && (T.touchEventsDesktop = {
// 					start: "MSPointerDown",
// 					move: "MSPointerMove",
// 					end: "MSPointerUp"
// 				}), T.touchEvents = {
// 					start: T.support.touch || !T.params.simulateTouch ? "touchstart" : T.touchEventsDesktop.start,
// 					move: T.support.touch || !T.params.simulateTouch ? "touchmove" : T.touchEventsDesktop.move,
// 					end: T.support.touch || !T.params.simulateTouch ? "touchend" : T.touchEventsDesktop.end
// 				}, (window.navigator.pointerEnabled || window.navigator.msPointerEnabled) && ("container" === T.params.touchEventsTarget ? T.container : T.wrapper).addClass("swiper-wp8-" + T.params.direction), T.initEvents = function (e) {
// 					var a = e ? "off" : "on",
// 						t = e ? "removeEventListener" : "addEventListener",
// 						s = "container" === T.params.touchEventsTarget ? T.container[0] : T.wrapper[0],
// 						r = T.support.touch ? s : document,
// 						n = !!T.params.nested;
// 					if (T.browser.ie) s[t](T.touchEvents.start, T.onTouchStart, !1), r[t](T.touchEvents.move, T.onTouchMove, n), r[t](T.touchEvents.end, T.onTouchEnd, !1);
// 					else {
// 						if (T.support.touch) {
// 							var o = !("touchstart" !== T.touchEvents.start || !T.support.passiveListener || !T.params.passiveListeners) && {
// 								passive: !0,
// 								capture: !1
// 							};
// 							s[t](T.touchEvents.start, T.onTouchStart, o), s[t](T.touchEvents.move, T.onTouchMove, n), s[t](T.touchEvents.end, T.onTouchEnd, o)
// 						}(i.simulateTouch && !T.device.ios && !T.device.android || i.simulateTouch && !T.support.touch && T.device.ios) && (s[t]("mousedown", T.onTouchStart, !1), document[t]("mousemove", T.onTouchMove, n), document[t]("mouseup", T.onTouchEnd, !1))
// 					}
// 					window[t]("resize", T.onResize), T.params.nextButton && T.nextButton && T.nextButton.length > 0 && (T.nextButton[a]("click", T.onClickNext), T.params.a11y && T.a11y && T.nextButton[a]("keydown", T.a11y.onEnterKey)), T.params.prevButton && T.prevButton && T.prevButton.length > 0 && (T.prevButton[a]("click", T.onClickPrev), T.params.a11y && T.a11y && T.prevButton[a]("keydown", T.a11y.onEnterKey)), T.params.pagination && T.params.paginationClickable && (T.paginationContainer[a]("click", "." + T.params.bulletClass, T.onClickIndex), T.params.a11y && T.a11y && T.paginationContainer[a]("keydown", "." + T.params.bulletClass, T.a11y.onEnterKey)), (T.params.preventClicks || T.params.preventClicksPropagation) && s[t]("click", T.preventClicks, !0)
// 				}, T.attachEvents = function () {
// 					T.initEvents()
// 				}, T.detachEvents = function () {
// 					T.initEvents(!0)
// 				}, T.allowClick = !0, T.preventClicks = function (e) {
// 					T.allowClick || (T.params.preventClicks && e.preventDefault(), T.params.preventClicksPropagation && T.animating && (e.stopPropagation(), e.stopImmediatePropagation()))
// 				}, T.onClickNext = function (e) {
// 					e.preventDefault(), T.isEnd && !T.params.loop || T.slideNext()
// 				}, T.onClickPrev = function (e) {
// 					e.preventDefault(), T.isBeginning && !T.params.loop || T.slidePrev()
// 				}, T.onClickIndex = function (a) {
// 					a.preventDefault();
// 					var t = e(this).index() * T.params.slidesPerGroup;
// 					T.params.loop && (t += T.loopedSlides), T.slideTo(t)
// 				},
// 				T.updateClickedSlide = function (a) {
// 					var t = o(a, "." + T.params.slideClass),
// 						s = !1;
// 					if (t)
// 						for (var i = 0; i < T.slides.length; i++) T.slides[i] === t && (s = !0);
// 					if (!t || !s) return T.clickedSlide = void 0, void(T.clickedIndex = void 0);
// 					if (T.clickedSlide = t, T.clickedIndex = e(t).index(), T.params.slideToClickedSlide && void 0 !== T.clickedIndex && T.clickedIndex !== T.activeIndex) {
// 						var r, n = T.clickedIndex,
// 							l = "auto" === T.params.slidesPerView ? T.currentSlidesPerView() : T.params.slidesPerView;
// 						if (T.params.loop) {
// 							if (T.animating) return;
// 							r = parseInt(e(T.clickedSlide).attr("data-swiper-slide-index"), 10), T.params.centeredSlides ? n < T.loopedSlides - l / 2 || n > T.slides.length - T.loopedSlides + l / 2 ? (T.fixLoop(), n = T.wrapper.children("." + T.params.slideClass + '[data-swiper-slide-index="' + r + '"]:not(.' + T.params.slideDuplicateClass + ")").eq(0).index(), setTimeout(function () {
// 								T.slideTo(n)
// 							}, 0)) : T.slideTo(n) : n > T.slides.length - l ? (T.fixLoop(), n = T.wrapper.children("." + T.params.slideClass + '[data-swiper-slide-index="' + r + '"]:not(.' + T.params.slideDuplicateClass + ")").eq(0).index(), setTimeout(function () {
// 								T.slideTo(n)
// 							}, 0)) : T.slideTo(n)
// 						} else T.slideTo(n)
// 					}
// 				};
// 			var S, C, z, M, E, P, I, k, L, D, B = "input, select, textarea, button, video",
// 				H = Date.now(),
// 				G = [];
// 			T.animating = !1, T.touches = {
// 				startX: 0,
// 				startY: 0,
// 				currentX: 0,
// 				currentY: 0,
// 				diff: 0
// 			};
// 			var X, A;
// 			T.onTouchStart = function (a) {
// 				if (a.originalEvent && (a = a.originalEvent), (X = "touchstart" === a.type) || !("which" in a) || 3 !== a.which) {
// 					if (T.params.noSwiping && o(a, "." + T.params.noSwipingClass)) return void(T.allowClick = !0);
// 					if (!T.params.swipeHandler || o(a, T.params.swipeHandler)) {
// 						var t = T.touches.currentX = "touchstart" === a.type ? a.targetTouches[0].pageX : a.pageX,
// 							s = T.touches.currentY = "touchstart" === a.type ? a.targetTouches[0].pageY : a.pageY;
// 						if (!(T.device.ios && T.params.iOSEdgeSwipeDetection && t <= T.params.iOSEdgeSwipeThreshold)) {
// 							if (S = !0, C = !1, z = !0, E = void 0, A = void 0, T.touches.startX = t, T.touches.startY = s, M = Date.now(), T.allowClick = !0, T.updateContainerSize(), T.swipeDirection = void 0, T.params.threshold > 0 && (k = !1), "touchstart" !== a.type) {
// 								var i = !0;
// 								e(a.target).is(B) && (i = !1), document.activeElement && e(document.activeElement).is(B) && document.activeElement.blur(), i && a.preventDefault()
// 							}
// 							T.emit("onTouchStart", T, a)
// 						}
// 					}
// 				}
// 			}, T.onTouchMove = function (a) {
// 				if (a.originalEvent && (a = a.originalEvent), !X || "mousemove" !== a.type) {
// 					if (a.preventedByNestedSwiper) return T.touches.startX = "touchmove" === a.type ? a.targetTouches[0].pageX : a.pageX, void(T.touches.startY = "touchmove" === a.type ? a.targetTouches[0].pageY : a.pageY);
// 					if (T.params.onlyExternal) return T.allowClick = !1, void(S && (T.touches.startX = T.touches.currentX = "touchmove" === a.type ? a.targetTouches[0].pageX : a.pageX, T.touches.startY = T.touches.currentY = "touchmove" === a.type ? a.targetTouches[0].pageY : a.pageY, M = Date.now()));
// 					if (X && T.params.touchReleaseOnEdges && !T.params.loop)
// 						if (T.isHorizontal()) {
// 							if (T.touches.currentX < T.touches.startX && T.translate <= T.maxTranslate() || T.touches.currentX > T.touches.startX && T.translate >= T.minTranslate()) return
// 						} else if (T.touches.currentY < T.touches.startY && T.translate <= T.maxTranslate() || T.touches.currentY > T.touches.startY && T.translate >= T.minTranslate()) return;
// 					if (X && document.activeElement && a.target === document.activeElement && e(a.target).is(B)) return C = !0, void(T.allowClick = !1);
// 					if (z && T.emit("onTouchMove", T, a), !(a.targetTouches && a.targetTouches.length > 1)) {
// 						if (T.touches.currentX = "touchmove" === a.type ? a.targetTouches[0].pageX : a.pageX, T.touches.currentY = "touchmove" === a.type ? a.targetTouches[0].pageY : a.pageY, void 0 === E) {
// 							var t;
// 							T.isHorizontal() && T.touches.currentY === T.touches.startY || !T.isHorizontal() && T.touches.currentX === T.touches.startX ? E = !1 : (t = 180 * Math.atan2(Math.abs(T.touches.currentY - T.touches.startY), Math.abs(T.touches.currentX - T.touches.startX)) / Math.PI, E = T.isHorizontal() ? t > T.params.touchAngle : 90 - t > T.params.touchAngle)
// 						}
// 						if (E && T.emit("onTouchMoveOpposite", T, a), void 0 === A && (T.touches.currentX === T.touches.startX && T.touches.currentY === T.touches.startY || (A = !0)), S) {
// 							if (E) return void(S = !1);
// 							if (A) {
// 								T.allowClick = !1, T.emit("onSliderMove", T, a), a.preventDefault(), T.params.touchMoveStopPropagation && !T.params.nested && a.stopPropagation(), C || (i.loop && T.fixLoop(), I = T.getWrapperTranslate(), T.setWrapperTransition(0), T.animating && T.wrapper.trigger("webkitTransitionEnd transitionend oTransitionEnd MSTransitionEnd msTransitionEnd"), T.params.autoplay && T.autoplaying && (T.params.autoplayDisableOnInteraction ? T.stopAutoplay() : T.pauseAutoplay()), D = !1, !T.params.grabCursor || T.params.allowSwipeToNext !== !0 && T.params.allowSwipeToPrev !== !0 || T.setGrabCursor(!0)), C = !0;
// 								var s = T.touches.diff = T.isHorizontal() ? T.touches.currentX - T.touches.startX : T.touches.currentY - T.touches.startY;
// 								s *= T.params.touchRatio, T.rtl && (s = -s), T.swipeDirection = s > 0 ? "prev" : "next", P = s + I;
// 								var r = !0;
// 								if (s > 0 && P > T.minTranslate() ? (r = !1, T.params.resistance && (P = T.minTranslate() - 1 + Math.pow(-T.minTranslate() + I + s, T.params.resistanceRatio))) : s < 0 && P < T.maxTranslate() && (r = !1, T.params.resistance && (P = T.maxTranslate() + 1 - Math.pow(T.maxTranslate() - I - s, T.params.resistanceRatio))), r && (a.preventedByNestedSwiper = !0), !T.params.allowSwipeToNext && "next" === T.swipeDirection && P < I && (P = I), !T.params.allowSwipeToPrev && "prev" === T.swipeDirection && P > I && (P = I), T.params.threshold > 0) {
// 									if (!(Math.abs(s) > T.params.threshold || k)) return void(P = I);
// 									if (!k) return k = !0, T.touches.startX = T.touches.currentX, T.touches.startY = T.touches.currentY, P = I, void(T.touches.diff = T.isHorizontal() ? T.touches.currentX - T.touches.startX : T.touches.currentY - T.touches.startY)
// 								}
// 								T.params.followFinger && ((T.params.freeMode || T.params.watchSlidesProgress) && T.updateActiveIndex(), T.params.freeMode && (0 === G.length && G.push({
// 									position: T.touches[T.isHorizontal() ? "startX" : "startY"],
// 									time: M
// 								}), G.push({
// 									position: T.touches[T.isHorizontal() ? "currentX" : "currentY"],
// 									time: (new window.Date).getTime()
// 								})), T.updateProgress(P), T.setWrapperTranslate(P))
// 							}
// 						}
// 					}
// 				}
// 			}, T.onTouchEnd = function (a) {
// 				if (a.originalEvent && (a = a.originalEvent), z && T.emit("onTouchEnd", T, a), z = !1, S) {
// 					T.params.grabCursor && C && S && (T.params.allowSwipeToNext === !0 || T.params.allowSwipeToPrev === !0) && T.setGrabCursor(!1);
// 					var t = Date.now(),
// 						s = t - M;
// 					if (T.allowClick && (T.updateClickedSlide(a), T.emit("onTap", T, a), s < 300 && t - H > 300 && (L && clearTimeout(L), L = setTimeout(function () {
// 							T && (T.params.paginationHide && T.paginationContainer.length > 0 && !e(a.target).hasClass(T.params.bulletClass) && T.paginationContainer.toggleClass(T.params.paginationHiddenClass), T.emit("onClick", T, a))
// 						}, 300)), s < 300 && t - H < 300 && (L && clearTimeout(L), T.emit("onDoubleTap", T, a))), H = Date.now(), setTimeout(function () {
// 							T && (T.allowClick = !0)
// 						}, 0), !S || !C || !T.swipeDirection || 0 === T.touches.diff || P === I) return void(S = C = !1);
// 					S = C = !1;
// 					var i;
// 					if (i = T.params.followFinger ? T.rtl ? T.translate : -T.translate : -P, T.params.freeMode) {
// 						if (i < -T.minTranslate()) return void T.slideTo(T.activeIndex);
// 						if (i > -T.maxTranslate()) return void(T.slides.length < T.snapGrid.length ? T.slideTo(T.snapGrid.length - 1) : T.slideTo(T.slides.length - 1));
// 						if (T.params.freeModeMomentum) {
// 							if (G.length > 1) {
// 								var r = G.pop(),
// 									n = G.pop(),
// 									o = r.position - n.position,
// 									l = r.time - n.time;
// 								T.velocity = o / l, T.velocity = T.velocity / 2, Math.abs(T.velocity) < T.params.freeModeMinimumVelocity && (T.velocity = 0), (l > 150 || (new window.Date).getTime() - r.time > 300) && (T.velocity = 0)
// 							} else T.velocity = 0;
// 							T.velocity = T.velocity * T.params.freeModeMomentumVelocityRatio, G.length = 0;
// 							var p = 1e3 * T.params.freeModeMomentumRatio,
// 								d = T.velocity * p,
// 								u = T.translate + d;
// 							T.rtl && (u = -u);
// 							var c, m = !1,
// 								h = 20 * Math.abs(T.velocity) * T.params.freeModeMomentumBounceRatio;
// 							if (u < T.maxTranslate()) T.params.freeModeMomentumBounce ? (u + T.maxTranslate() < -h && (u = T.maxTranslate() - h), c = T.maxTranslate(), m = !0, D = !0) : u = T.maxTranslate();
// 							else if (u > T.minTranslate()) T.params.freeModeMomentumBounce ? (u - T.minTranslate() > h && (u = T.minTranslate() + h), c = T.minTranslate(), m = !0, D = !0) : u = T.minTranslate();
// 							else if (T.params.freeModeSticky) {
// 								var g, f = 0;
// 								for (f = 0; f < T.snapGrid.length; f += 1)
// 									if (T.snapGrid[f] > -u) {
// 										g = f;
// 										break
// 									}
// 								u = Math.abs(T.snapGrid[g] - u) < Math.abs(T.snapGrid[g - 1] - u) || "next" === T.swipeDirection ? T.snapGrid[g] : T.snapGrid[g - 1], T.rtl || (u = -u)
// 							}
// 							if (0 !== T.velocity) p = T.rtl ? Math.abs((-u - T.translate) / T.velocity) : Math.abs((u - T.translate) / T.velocity);
// 							else if (T.params.freeModeSticky) return void T.slideReset();
// 							T.params.freeModeMomentumBounce && m ? (T.updateProgress(c), T.setWrapperTransition(p), T.setWrapperTranslate(u), T.onTransitionStart(), T.animating = !0, T.wrapper.transitionEnd(function () {
// 								T && D && (T.emit("onMomentumBounce", T), T.setWrapperTransition(T.params.speed), T.setWrapperTranslate(c), T.wrapper.transitionEnd(function () {
// 									T && T.onTransitionEnd()
// 								}))
// 							})) : T.velocity ? (T.updateProgress(u), T.setWrapperTransition(p), T.setWrapperTranslate(u), T.onTransitionStart(), T.animating || (T.animating = !0, T.wrapper.transitionEnd(function () {
// 								T && T.onTransitionEnd()
// 							}))) : T.updateProgress(u), T.updateActiveIndex()
// 						}
// 						return void((!T.params.freeModeMomentum || s >= T.params.longSwipesMs) && (T.updateProgress(), T.updateActiveIndex()))
// 					}
// 					var v, w = 0,
// 						y = T.slidesSizesGrid[0];
// 					for (v = 0; v < T.slidesGrid.length; v += T.params.slidesPerGroup) void 0 !== T.slidesGrid[v + T.params.slidesPerGroup] ? i >= T.slidesGrid[v] && i < T.slidesGrid[v + T.params.slidesPerGroup] && (w = v, y = T.slidesGrid[v + T.params.slidesPerGroup] - T.slidesGrid[v]) : i >= T.slidesGrid[v] && (w = v, y = T.slidesGrid[T.slidesGrid.length - 1] - T.slidesGrid[T.slidesGrid.length - 2]);
// 					var x = (i - T.slidesGrid[w]) / y;
// 					if (s > T.params.longSwipesMs) {
// 						if (!T.params.longSwipes) return void T.slideTo(T.activeIndex);
// 						"next" === T.swipeDirection && (x >= T.params.longSwipesRatio ? T.slideTo(w + T.params.slidesPerGroup) : T.slideTo(w)), "prev" === T.swipeDirection && (x > 1 - T.params.longSwipesRatio ? T.slideTo(w + T.params.slidesPerGroup) : T.slideTo(w))
// 					} else {
// 						if (!T.params.shortSwipes) return void T.slideTo(T.activeIndex);
// 						"next" === T.swipeDirection && T.slideTo(w + T.params.slidesPerGroup), "prev" === T.swipeDirection && T.slideTo(w)
// 					}
// 				}
// 			}, T._slideTo = function (e, a) {
// 				return T.slideTo(e, a, !0, !0)
// 			}, T.slideTo = function (e, a, t, s) {
// 				void 0 === t && (t = !0), void 0 === e && (e = 0), e < 0 && (e = 0), T.snapIndex = Math.floor(e / T.params.slidesPerGroup), T.snapIndex >= T.snapGrid.length && (T.snapIndex = T.snapGrid.length - 1);
// 				var i = -T.snapGrid[T.snapIndex];
// 				if (T.params.autoplay && T.autoplaying && (s || !T.params.autoplayDisableOnInteraction ? T.pauseAutoplay(a) : T.stopAutoplay()), T.updateProgress(i), T.params.normalizeSlideIndex)
// 					for (var r = 0; r < T.slidesGrid.length; r++) - Math.floor(100 * i) >= Math.floor(100 * T.slidesGrid[r]) && (e = r);
// 				return !(!T.params.allowSwipeToNext && i < T.translate && i < T.minTranslate()) && (!(!T.params.allowSwipeToPrev && i > T.translate && i > T.maxTranslate() && (T.activeIndex || 0) !== e) && (void 0 === a && (a = T.params.speed), T.previousIndex = T.activeIndex || 0, T.activeIndex = e, T.updateRealIndex(), T.rtl && -i === T.translate || !T.rtl && i === T.translate ? (T.params.autoHeight && T.updateAutoHeight(), T.updateClasses(), "slide" !== T.params.effect && T.setWrapperTranslate(i), !1) : (T.updateClasses(), T.onTransitionStart(t), 0 === a || T.browser.lteIE9 ? (T.setWrapperTranslate(i), T.setWrapperTransition(0), T.onTransitionEnd(t)) : (T.setWrapperTranslate(i), T.setWrapperTransition(a), T.animating || (T.animating = !0, T.wrapper.transitionEnd(function () {
// 					T && T.onTransitionEnd(t)
// 				}))), !0)))
// 			}, T.onTransitionStart = function (e) {
// 				void 0 === e && (e = !0), T.params.autoHeight && T.updateAutoHeight(), T.lazy && T.lazy.onTransitionStart(), e && (T.emit("onTransitionStart", T), T.activeIndex !== T.previousIndex && (T.emit("onSlideChangeStart", T), T.activeIndex > T.previousIndex ? T.emit("onSlideNextStart", T) : T.emit("onSlidePrevStart", T)))
// 			}, T.onTransitionEnd = function (e) {
// 				T.animating = !1, T.setWrapperTransition(0), void 0 === e && (e = !0), T.lazy && T.lazy.onTransitionEnd(), e && (T.emit("onTransitionEnd", T), T.activeIndex !== T.previousIndex && (T.emit("onSlideChangeEnd", T), T.activeIndex > T.previousIndex ? T.emit("onSlideNextEnd", T) : T.emit("onSlidePrevEnd", T))), T.params.history && T.history && T.history.setHistory(T.params.history, T.activeIndex), T.params.hashnav && T.hashnav && T.hashnav.setHash()
// 			}, T.slideNext = function (e, a, t) {
// 				if (T.params.loop) {
// 					if (T.animating) return !1;
// 					T.fixLoop();
// 					T.container[0].clientLeft;
// 					return T.slideTo(T.activeIndex + T.params.slidesPerGroup, a, e, t)
// 				}
// 				return T.slideTo(T.activeIndex + T.params.slidesPerGroup, a, e, t)
// 			}, T._slideNext = function (e) {
// 				return T.slideNext(!0, e, !0)
// 			}, T.slidePrev = function (e, a, t) {
// 				if (T.params.loop) {
// 					if (T.animating) return !1;
// 					T.fixLoop();
// 					T.container[0].clientLeft;
// 					return T.slideTo(T.activeIndex - 1, a, e, t)
// 				}
// 				return T.slideTo(T.activeIndex - 1, a, e, t)
// 			}, T._slidePrev = function (e) {
// 				return T.slidePrev(!0, e, !0)
// 			}, T.slideReset = function (e, a, t) {
// 				return T.slideTo(T.activeIndex, a, e)
// 			}, T.disableTouchControl = function () {
// 				return T.params.onlyExternal = !0, !0
// 			}, T.enableTouchControl = function () {
// 				return T.params.onlyExternal = !1, !0
// 			}, T.setWrapperTransition = function (e, a) {
// 				T.wrapper.transition(e), "slide" !== T.params.effect && T.effects[T.params.effect] && T.effects[T.params.effect].setTransition(e), T.params.parallax && T.parallax && T.parallax.setTransition(e), T.params.scrollbar && T.scrollbar && T.scrollbar.setTransition(e), T.params.control && T.controller && T.controller.setTransition(e, a), T.emit("onSetTransition", T, e)
// 			}, T.setWrapperTranslate = function (e, a, t) {
// 				var s = 0,
// 					i = 0;
// 				T.isHorizontal() ? s = T.rtl ? -e : e : i = e, T.params.roundLengths && (s = r(s), i = r(i)), T.params.virtualTranslate || (T.support.transforms3d ? T.wrapper.transform("translate3d(" + s + "px, " + i + "px, 0px)") : T.wrapper.transform("translate(" + s + "px, " + i + "px)")), T.translate = T.isHorizontal() ? s : i;
// 				var n, o = T.maxTranslate() - T.minTranslate();
// 				n = 0 === o ? 0 : (e - T.minTranslate()) / o, n !== T.progress && T.updateProgress(e), a && T.updateActiveIndex(), "slide" !== T.params.effect && T.effects[T.params.effect] && T.effects[T.params.effect].setTranslate(T.translate), T.params.parallax && T.parallax && T.parallax.setTranslate(T.translate), T.params.scrollbar && T.scrollbar && T.scrollbar.setTranslate(T.translate), T.params.control && T.controller && T.controller.setTranslate(T.translate, t), T.emit("onSetTranslate", T, T.translate)
// 			}, T.getTranslate = function (e, a) {
// 				var t, s, i, r;
// 				return void 0 === a && (a = "x"), T.params.virtualTranslate ? T.rtl ? -T.translate : T.translate : (i = window.getComputedStyle(e, null), window.WebKitCSSMatrix ? (s = i.transform || i.webkitTransform, s.split(",").length > 6 && (s = s.split(", ").map(function (e) {
// 					return e.replace(",", ".")
// 				}).join(", ")), r = new window.WebKitCSSMatrix("none" === s ? "" : s)) : (r = i.MozTransform || i.OTransform || i.MsTransform || i.msTransform || i.transform || i.getPropertyValue("transform").replace("translate(", "matrix(1, 0, 0, 1,"), t = r.toString().split(",")), "x" === a && (s = window.WebKitCSSMatrix ? r.m41 : 16 === t.length ? parseFloat(t[12]) : parseFloat(t[4])), "y" === a && (s = window.WebKitCSSMatrix ? r.m42 : 16 === t.length ? parseFloat(t[13]) : parseFloat(t[5])), T.rtl && s && (s = -s), s || 0)
// 			}, T.getWrapperTranslate = function (e) {
// 				return void 0 === e && (e = T.isHorizontal() ? "x" : "y"), T.getTranslate(T.wrapper[0], e)
// 			}, T.observers = [], T.initObservers = function () {
// 				if (T.params.observeParents)
// 					for (var e = T.container.parents(), a = 0; a < e.length; a++) l(e[a]);
// 				l(T.container[0], {
// 					childList: !1
// 				}), l(T.wrapper[0], {
// 					attributes: !1
// 				})
// 			}, T.disconnectObservers = function () {
// 				for (var e = 0; e < T.observers.length; e++) T.observers[e].disconnect();
// 				T.observers = []
// 			}, T.createLoop = function () {
// 				T.wrapper.children("." + T.params.slideClass + "." + T.params.slideDuplicateClass).remove();
// 				var a = T.wrapper.children("." + T.params.slideClass);
// 				"auto" !== T.params.slidesPerView || T.params.loopedSlides || (T.params.loopedSlides = a.length), T.loopedSlides = parseInt(T.params.loopedSlides || T.params.slidesPerView, 10), T.loopedSlides = T.loopedSlides + T.params.loopAdditionalSlides, T.loopedSlides > a.length && (T.loopedSlides = a.length);
// 				var t, s = [],
// 					i = [];
// 				for (a.each(function (t, r) {
// 						var n = e(this);
// 						t < T.loopedSlides && i.push(r), t < a.length && t >= a.length - T.loopedSlides && s.push(r), n.attr("data-swiper-slide-index", t)
// 					}), t = 0; t < i.length; t++) T.wrapper.append(e(i[t].cloneNode(!0)).addClass(T.params.slideDuplicateClass));
// 				for (t = s.length - 1; t >= 0; t--) T.wrapper.prepend(e(s[t].cloneNode(!0)).addClass(T.params.slideDuplicateClass))
// 			}, T.destroyLoop = function () {
// 				T.wrapper.children("." + T.params.slideClass + "." + T.params.slideDuplicateClass).remove(), T.slides.removeAttr("data-swiper-slide-index")
// 			}, T.reLoop = function (e) {
// 				var a = T.activeIndex - T.loopedSlides;
// 				T.destroyLoop(), T.createLoop(), T.updateSlidesSize(), e && T.slideTo(a + T.loopedSlides, 0, !1)
// 			}, T.fixLoop = function () {
// 				var e;
// 				T.activeIndex < T.loopedSlides ? (e = T.slides.length - 3 * T.loopedSlides + T.activeIndex, e += T.loopedSlides, T.slideTo(e, 0, !1, !0)) : ("auto" === T.params.slidesPerView && T.activeIndex >= 2 * T.loopedSlides || T.activeIndex > T.slides.length - 2 * T.params.slidesPerView) && (e = -T.slides.length + T.activeIndex + T.loopedSlides, e += T.loopedSlides, T.slideTo(e, 0, !1, !0))
// 			}, T.appendSlide = function (e) {
// 				if (T.params.loop && T.destroyLoop(), "object" == typeof e && e.length)
// 					for (var a = 0; a < e.length; a++) e[a] && T.wrapper.append(e[a]);
// 				else T.wrapper.append(e);
// 				T.params.loop && T.createLoop(), T.params.observer && T.support.observer || T.update(!0)
// 			}, T.prependSlide = function (e) {
// 				T.params.loop && T.destroyLoop();
// 				var a = T.activeIndex + 1;
// 				if ("object" == typeof e && e.length) {
// 					for (var t = 0; t < e.length; t++) e[t] && T.wrapper.prepend(e[t]);
// 					a = T.activeIndex + e.length
// 				} else T.wrapper.prepend(e);
// 				T.params.loop && T.createLoop(), T.params.observer && T.support.observer || T.update(!0), T.slideTo(a, 0, !1)
// 			}, T.removeSlide = function (e) {
// 				T.params.loop && (T.destroyLoop(), T.slides = T.wrapper.children("." + T.params.slideClass));
// 				var a, t = T.activeIndex;
// 				if ("object" == typeof e && e.length) {
// 					for (var s = 0; s < e.length; s++) a = e[s], T.slides[a] && T.slides.eq(a).remove(), a < t && t--;
// 					t = Math.max(t, 0)
// 				} else a = e, T.slides[a] && T.slides.eq(a).remove(), a < t && t--, t = Math.max(t, 0);
// 				T.params.loop && T.createLoop(), T.params.observer && T.support.observer || T.update(!0), T.params.loop ? T.slideTo(t + T.loopedSlides, 0, !1) : T.slideTo(t, 0, !1)
// 			}, T.removeAllSlides = function () {
// 				for (var e = [], a = 0; a < T.slides.length; a++) e.push(a);
// 				T.removeSlide(e)
// 			}, T.effects = {
// 				fade: {
// 					setTranslate: function () {
// 						for (var e = 0; e < T.slides.length; e++) {
// 							var a = T.slides.eq(e),
// 								t = a[0].swiperSlideOffset,
// 								s = -t;
// 							T.params.virtualTranslate || (s -= T.translate);
// 							var i = 0;
// 							T.isHorizontal() || (i = s, s = 0);
// 							var r = T.params.fade.crossFade ? Math.max(1 - Math.abs(a[0].progress), 0) : 1 + Math.min(Math.max(a[0].progress, -1), 0);
// 							a.css({
// 								opacity: r
// 							}).transform("translate3d(" + s + "px, " + i + "px, 0px)")
// 						}
// 					},
// 					setTransition: function (e) {
// 						if (T.slides.transition(e), T.params.virtualTranslate && 0 !== e) {
// 							var a = !1;
// 							T.slides.transitionEnd(function () {
// 								if (!a && T) {
// 									a = !0, T.animating = !1;
// 									for (var e = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"], t = 0; t < e.length; t++) T.wrapper.trigger(e[t])
// 								}
// 							})
// 						}
// 					}
// 				},
// 				flip: {
// 					setTranslate: function () {
// 						for (var a = 0; a < T.slides.length; a++) {
// 							var t = T.slides.eq(a),
// 								s = t[0].progress;
// 							T.params.flip.limitRotation && (s = Math.max(Math.min(t[0].progress, 1), -1));
// 							var i = t[0].swiperSlideOffset,
// 								r = -180 * s,
// 								n = r,
// 								o = 0,
// 								l = -i,
// 								p = 0;
// 							if (T.isHorizontal() ? T.rtl && (n = -n) : (p = l, l = 0, o = -n, n = 0), t[0].style.zIndex = -Math.abs(Math.round(s)) + T.slides.length, T.params.flip.slideShadows) {
// 								var d = T.isHorizontal() ? t.find(".swiper-slide-shadow-left") : t.find(".swiper-slide-shadow-top"),
// 									u = T.isHorizontal() ? t.find(".swiper-slide-shadow-right") : t.find(".swiper-slide-shadow-bottom");
// 								0 === d.length && (d = e('<div class="swiper-slide-shadow-' + (T.isHorizontal() ? "left" : "top") + '"></div>'), t.append(d)), 0 === u.length && (u = e('<div class="swiper-slide-shadow-' + (T.isHorizontal() ? "right" : "bottom") + '"></div>'), t.append(u)), d.length && (d[0].style.opacity = Math.max(-s, 0)), u.length && (u[0].style.opacity = Math.max(s, 0))
// 							}
// 							t.transform("translate3d(" + l + "px, " + p + "px, 0px) rotateX(" + o + "deg) rotateY(" + n + "deg)")
// 						}
// 					},
// 					setTransition: function (a) {
// 						if (T.slides.transition(a).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(a), T.params.virtualTranslate && 0 !== a) {
// 							var t = !1;
// 							T.slides.eq(T.activeIndex).transitionEnd(function () {
// 								if (!t && T && e(this).hasClass(T.params.slideActiveClass)) {
// 									t = !0, T.animating = !1;
// 									for (var a = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"], s = 0; s < a.length; s++) T.wrapper.trigger(a[s])
// 								}
// 							})
// 						}
// 					}
// 				},
// 				cube: {
// 					setTranslate: function () {
// 						var a, t = 0;
// 						T.params.cube.shadow && (T.isHorizontal() ? (a = T.wrapper.find(".swiper-cube-shadow"), 0 === a.length && (a = e('<div class="swiper-cube-shadow"></div>'), T.wrapper.append(a)), a.css({
// 							height: T.width + "px"
// 						})) : (a = T.container.find(".swiper-cube-shadow"), 0 === a.length && (a = e('<div class="swiper-cube-shadow"></div>'), T.container.append(a))));
// 						for (var s = 0; s < T.slides.length; s++) {
// 							var i = T.slides.eq(s),
// 								r = 90 * s,
// 								n = Math.floor(r / 360);
// 							T.rtl && (r = -r, n = Math.floor(-r / 360));
// 							var o = Math.max(Math.min(i[0].progress, 1), -1),
// 								l = 0,
// 								p = 0,
// 								d = 0;
// 							s % 4 == 0 ? (l = 4 * -n * T.size, d = 0) : (s - 1) % 4 == 0 ? (l = 0, d = 4 * -n * T.size) : (s - 2) % 4 == 0 ? (l = T.size + 4 * n * T.size, d = T.size) : (s - 3) % 4 == 0 && (l = -T.size, d = 3 * T.size + 4 * T.size * n), T.rtl && (l = -l), T.isHorizontal() || (p = l, l = 0);
// 							var u = "rotateX(" + (T.isHorizontal() ? 0 : -r) + "deg) rotateY(" + (T.isHorizontal() ? r : 0) + "deg) translate3d(" + l + "px, " + p + "px, " + d + "px)";
// 							if (o <= 1 && o > -1 && (t = 90 * s + 90 * o, T.rtl && (t = 90 * -s - 90 * o)), i.transform(u), T.params.cube.slideShadows) {
// 								var c = T.isHorizontal() ? i.find(".swiper-slide-shadow-left") : i.find(".swiper-slide-shadow-top"),
// 									m = T.isHorizontal() ? i.find(".swiper-slide-shadow-right") : i.find(".swiper-slide-shadow-bottom");
// 								0 === c.length && (c = e('<div class="swiper-slide-shadow-' + (T.isHorizontal() ? "left" : "top") + '"></div>'), i.append(c)), 0 === m.length && (m = e('<div class="swiper-slide-shadow-' + (T.isHorizontal() ? "right" : "bottom") + '"></div>'), i.append(m)), c.length && (c[0].style.opacity = Math.max(-o, 0)), m.length && (m[0].style.opacity = Math.max(o, 0))
// 							}
// 						}
// 						if (T.wrapper.css({
// 								"-webkit-transform-origin": "50% 50% -" + T.size / 2 + "px",
// 								"-moz-transform-origin": "50% 50% -" + T.size / 2 + "px",
// 								"-ms-transform-origin": "50% 50% -" + T.size / 2 + "px",
// 								"transform-origin": "50% 50% -" + T.size / 2 + "px"
// 							}), T.params.cube.shadow)
// 							if (T.isHorizontal()) a.transform("translate3d(0px, " + (T.width / 2 + T.params.cube.shadowOffset) + "px, " + -T.width / 2 + "px) rotateX(90deg) rotateZ(0deg) scale(" + T.params.cube.shadowScale + ")");
// 							else {
// 								var h = Math.abs(t) - 90 * Math.floor(Math.abs(t) / 90),
// 									g = 1.5 - (Math.sin(2 * h * Math.PI / 360) / 2 + Math.cos(2 * h * Math.PI / 360) / 2),
// 									f = T.params.cube.shadowScale,
// 									v = T.params.cube.shadowScale / g,
// 									w = T.params.cube.shadowOffset;
// 								a.transform("scale3d(" + f + ", 1, " + v + ") translate3d(0px, " + (T.height / 2 + w) + "px, " + -T.height / 2 / v + "px) rotateX(-90deg)")
// 							}
// 						var y = T.isSafari || T.isUiWebView ? -T.size / 2 : 0;
// 						T.wrapper.transform("translate3d(0px,0," + y + "px) rotateX(" + (T.isHorizontal() ? 0 : t) + "deg) rotateY(" + (T.isHorizontal() ? -t : 0) + "deg)")
// 					},
// 					setTransition: function (e) {
// 						T.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e), T.params.cube.shadow && !T.isHorizontal() && T.container.find(".swiper-cube-shadow").transition(e)
// 					}
// 				},
// 				coverflow: {
// 					setTranslate: function () {
// 						for (var a = T.translate, t = T.isHorizontal() ? -a + T.width / 2 : -a + T.height / 2, s = T.isHorizontal() ? T.params.coverflow.rotate : -T.params.coverflow.rotate, i = T.params.coverflow.depth, r = 0, n = T.slides.length; r < n; r++) {
// 							var o = T.slides.eq(r),
// 								l = T.slidesSizesGrid[r],
// 								p = o[0].swiperSlideOffset,
// 								d = (t - p - l / 2) / l * T.params.coverflow.modifier,
// 								u = T.isHorizontal() ? s * d : 0,
// 								c = T.isHorizontal() ? 0 : s * d,
// 								m = -i * Math.abs(d),
// 								h = T.isHorizontal() ? 0 : T.params.coverflow.stretch * d,
// 								g = T.isHorizontal() ? T.params.coverflow.stretch * d : 0;
// 							Math.abs(g) < .001 && (g = 0), Math.abs(h) < .001 && (h = 0), Math.abs(m) < .001 && (m = 0), Math.abs(u) < .001 && (u = 0), Math.abs(c) < .001 && (c = 0);
// 							var f = "translate3d(" + g + "px," + h + "px," + m + "px)  rotateX(" + c + "deg) rotateY(" + u + "deg)";
// 							if (o.transform(f), o[0].style.zIndex = 1 - Math.abs(Math.round(d)), T.params.coverflow.slideShadows) {
// 								var v = T.isHorizontal() ? o.find(".swiper-slide-shadow-left") : o.find(".swiper-slide-shadow-top"),
// 									w = T.isHorizontal() ? o.find(".swiper-slide-shadow-right") : o.find(".swiper-slide-shadow-bottom");
// 								0 === v.length && (v = e('<div class="swiper-slide-shadow-' + (T.isHorizontal() ? "left" : "top") + '"></div>'), o.append(v)), 0 === w.length && (w = e('<div class="swiper-slide-shadow-' + (T.isHorizontal() ? "right" : "bottom") + '"></div>'), o.append(w)), v.length && (v[0].style.opacity = d > 0 ? d : 0), w.length && (w[0].style.opacity = -d > 0 ? -d : 0)
// 							}
// 						}
// 						if (T.browser.ie) {
// 							T.wrapper[0].style.perspectiveOrigin = t + "px 50%"
// 						}
// 					},
// 					setTransition: function (e) {
// 						T.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e)
// 					}
// 				}
// 			}, T.lazy = {
// 				initialImageLoaded: !1,
// 				loadImageInSlide: function (a, t) {
// 					if (void 0 !== a && (void 0 === t && (t = !0), 0 !== T.slides.length)) {
// 						var s = T.slides.eq(a),
// 							i = s.find("." + T.params.lazyLoadingClass + ":not(." + T.params.lazyStatusLoadedClass + "):not(." + T.params.lazyStatusLoadingClass + ")");
// 						!s.hasClass(T.params.lazyLoadingClass) || s.hasClass(T.params.lazyStatusLoadedClass) || s.hasClass(T.params.lazyStatusLoadingClass) || (i = i.add(s[0])), 0 !== i.length && i.each(function () {
// 							var a = e(this);
// 							a.addClass(T.params.lazyStatusLoadingClass);
// 							var i = a.attr("data-background"),
// 								r = a.attr("data-src"),
// 								n = a.attr("data-srcset"),
// 								o = a.attr("data-sizes");
// 							T.loadImage(a[0], r || i, n, o, !1, function () {
// 								if (void 0 !== T && null !== T && T) {
// 									if (i ? (a.css("background-image", 'url("' + i + '")'), a.removeAttr("data-background")) : (n && (a.attr("srcset", n), a.removeAttr("data-srcset")), o && (a.attr("sizes", o), a.removeAttr("data-sizes")), r && (a.attr("src", r), a.removeAttr("data-src"))), a.addClass(T.params.lazyStatusLoadedClass).removeClass(T.params.lazyStatusLoadingClass), s.find("." + T.params.lazyPreloaderClass + ", ." + T.params.preloaderClass).remove(), T.params.loop && t) {
// 										var e = s.attr("data-swiper-slide-index");
// 										if (s.hasClass(T.params.slideDuplicateClass)) {
// 											var l = T.wrapper.children('[data-swiper-slide-index="' + e + '"]:not(.' + T.params.slideDuplicateClass + ")");
// 											T.lazy.loadImageInSlide(l.index(), !1)
// 										} else {
// 											var p = T.wrapper.children("." + T.params.slideDuplicateClass + '[data-swiper-slide-index="' + e + '"]');
// 											T.lazy.loadImageInSlide(p.index(), !1)
// 										}
// 									}
// 									T.emit("onLazyImageReady", T, s[0], a[0])
// 								}
// 							}), T.emit("onLazyImageLoad", T, s[0], a[0])
// 						})
// 					}
// 				},
// 				load: function () {
// 					var a, t = T.params.slidesPerView;
// 					if ("auto" === t && (t = 0), T.lazy.initialImageLoaded || (T.lazy.initialImageLoaded = !0), T.params.watchSlidesVisibility) T.wrapper.children("." + T.params.slideVisibleClass).each(function () {
// 						T.lazy.loadImageInSlide(e(this).index())
// 					});
// 					else if (t > 1)
// 						for (a = T.activeIndex; a < T.activeIndex + t; a++) T.slides[a] && T.lazy.loadImageInSlide(a);
// 					else T.lazy.loadImageInSlide(T.activeIndex);
// 					if (T.params.lazyLoadingInPrevNext)
// 						if (t > 1 || T.params.lazyLoadingInPrevNextAmount && T.params.lazyLoadingInPrevNextAmount > 1) {
// 							var s = T.params.lazyLoadingInPrevNextAmount,
// 								i = t,
// 								r = Math.min(T.activeIndex + i + Math.max(s, i), T.slides.length),
// 								n = Math.max(T.activeIndex - Math.max(i, s), 0);
// 							for (a = T.activeIndex + t; a < r; a++) T.slides[a] && T.lazy.loadImageInSlide(a);
// 							for (a = n; a < T.activeIndex; a++) T.slides[a] && T.lazy.loadImageInSlide(a)
// 						} else {
// 							var o = T.wrapper.children("." + T.params.slideNextClass);
// 							o.length > 0 && T.lazy.loadImageInSlide(o.index());
// 							var l = T.wrapper.children("." + T.params.slidePrevClass);
// 							l.length > 0 && T.lazy.loadImageInSlide(l.index())
// 						}
// 				},
// 				onTransitionStart: function () {
// 					T.params.lazyLoading && (T.params.lazyLoadingOnTransitionStart || !T.params.lazyLoadingOnTransitionStart && !T.lazy.initialImageLoaded) && T.lazy.load()
// 				},
// 				onTransitionEnd: function () {
// 					T.params.lazyLoading && !T.params.lazyLoadingOnTransitionStart && T.lazy.load()
// 				}
// 			}, T.scrollbar = {
// 				isTouched: !1,
// 				setDragPosition: function (e) {
// 					var a = T.scrollbar,
// 						t = T.isHorizontal() ? "touchstart" === e.type || "touchmove" === e.type ? e.targetTouches[0].pageX : e.pageX || e.clientX : "touchstart" === e.type || "touchmove" === e.type ? e.targetTouches[0].pageY : e.pageY || e.clientY,
// 						s = t - a.track.offset()[T.isHorizontal() ? "left" : "top"] - a.dragSize / 2,
// 						i = -T.minTranslate() * a.moveDivider,
// 						r = -T.maxTranslate() * a.moveDivider;
// 					s < i ? s = i : s > r && (s = r), s = -s / a.moveDivider, T.updateProgress(s), T.setWrapperTranslate(s, !0)
// 				},
// 				dragStart: function (e) {
// 					var a = T.scrollbar;
// 					a.isTouched = !0, e.preventDefault(), e.stopPropagation(), a.setDragPosition(e), clearTimeout(a.dragTimeout), a.track.transition(0), T.params.scrollbarHide && a.track.css("opacity", 1), T.wrapper.transition(100), a.drag.transition(100), T.emit("onScrollbarDragStart", T)
// 				},
// 				dragMove: function (e) {
// 					var a = T.scrollbar;
// 					a.isTouched && (e.preventDefault ? e.preventDefault() : e.returnValue = !1, a.setDragPosition(e), T.wrapper.transition(0), a.track.transition(0), a.drag.transition(0), T.emit("onScrollbarDragMove", T))
// 				},
// 				dragEnd: function (e) {
// 					var a = T.scrollbar;
// 					a.isTouched && (a.isTouched = !1, T.params.scrollbarHide && (clearTimeout(a.dragTimeout), a.dragTimeout = setTimeout(function () {
// 						a.track.css("opacity", 0), a.track.transition(400)
// 					}, 1e3)), T.emit("onScrollbarDragEnd", T), T.params.scrollbarSnapOnRelease && T.slideReset())
// 				},
// 				draggableEvents: function () {
// 					return T.params.simulateTouch !== !1 || T.support.touch ? T.touchEvents : T.touchEventsDesktop
// 				}(),
// 				enableDraggable: function () {
// 					var a = T.scrollbar,
// 						t = T.support.touch ? a.track : document;
// 					e(a.track).on(a.draggableEvents.start, a.dragStart), e(t).on(a.draggableEvents.move, a.dragMove), e(t).on(a.draggableEvents.end, a.dragEnd)
// 				},
// 				disableDraggable: function () {
// 					var a = T.scrollbar,
// 						t = T.support.touch ? a.track : document;
// 					e(a.track).off(a.draggableEvents.start, a.dragStart), e(t).off(a.draggableEvents.move, a.dragMove), e(t).off(a.draggableEvents.end, a.dragEnd)
// 				},
// 				set: function () {
// 					if (T.params.scrollbar) {
// 						var a = T.scrollbar;
// 						a.track = e(T.params.scrollbar), T.params.uniqueNavElements && "string" == typeof T.params.scrollbar && a.track.length > 1 && 1 === T.container.find(T.params.scrollbar).length && (a.track = T.container.find(T.params.scrollbar)), a.drag = a.track.find(".swiper-scrollbar-drag"), 0 === a.drag.length && (a.drag = e('<div class="swiper-scrollbar-drag"></div>'), a.track.append(a.drag)), a.drag[0].style.width = "", a.drag[0].style.height = "", a.trackSize = T.isHorizontal() ? a.track[0].offsetWidth : a.track[0].offsetHeight, a.divider = T.size / T.virtualSize, a.moveDivider = a.divider * (a.trackSize / T.size), a.dragSize = a.trackSize * a.divider, T.isHorizontal() ? a.drag[0].style.width = a.dragSize + "px" : a.drag[0].style.height = a.dragSize + "px", a.divider >= 1 ? a.track[0].style.display = "none" : a.track[0].style.display = "", T.params.scrollbarHide && (a.track[0].style.opacity = 0)
// 					}
// 				},
// 				setTranslate: function () {
// 					if (T.params.scrollbar) {
// 						var e, a = T.scrollbar,
// 							t = (T.translate, a.dragSize);
// 						e = (a.trackSize - a.dragSize) * T.progress, T.rtl && T.isHorizontal() ? (e = -e, e > 0 ? (t = a.dragSize - e, e = 0) : -e + a.dragSize > a.trackSize && (t = a.trackSize + e)) : e < 0 ? (t = a.dragSize + e, e = 0) : e + a.dragSize > a.trackSize && (t = a.trackSize - e), T.isHorizontal() ? (T.support.transforms3d ? a.drag.transform("translate3d(" + e + "px, 0, 0)") : a.drag.transform("translateX(" + e + "px)"), a.drag[0].style.width = t + "px") : (T.support.transforms3d ? a.drag.transform("translate3d(0px, " + e + "px, 0)") : a.drag.transform("translateY(" + e + "px)"), a.drag[0].style.height = t + "px"), T.params.scrollbarHide && (clearTimeout(a.timeout), a.track[0].style.opacity = 1, a.timeout = setTimeout(function () {
// 							a.track[0].style.opacity = 0, a.track.transition(400)
// 						}, 1e3))
// 					}
// 				},
// 				setTransition: function (e) {
// 					T.params.scrollbar && T.scrollbar.drag.transition(e)
// 				}
// 			}, T.controller = {
// 				LinearSpline: function (e, a) {
// 					var t = function () {
// 						var e, a, t;
// 						return function (s, i) {
// 							for (a = -1, e = s.length; e - a > 1;) s[t = e + a >> 1] <= i ? a = t : e = t;
// 							return e
// 						}
// 					}();
// 					this.x = e, this.y = a, this.lastIndex = e.length - 1;
// 					var s, i;
// 					this.x.length;
// 					this.interpolate = function (e) {
// 						return e ? (i = t(this.x, e), s = i - 1, (e - this.x[s]) * (this.y[i] - this.y[s]) / (this.x[i] - this.x[s]) + this.y[s]) : 0
// 					}
// 				},
// 				getInterpolateFunction: function (e) {
// 					T.controller.spline || (T.controller.spline = T.params.loop ? new T.controller.LinearSpline(T.slidesGrid, e.slidesGrid) : new T.controller.LinearSpline(T.snapGrid, e.snapGrid))
// 				},
// 				setTranslate: function (e, t) {
// 					function s(a) {
// 						e = a.rtl && "horizontal" === a.params.direction ? -T.translate : T.translate, "slide" === T.params.controlBy && (T.controller.getInterpolateFunction(a), r = -T.controller.spline.interpolate(-e)), r && "container" !== T.params.controlBy || (i = (a.maxTranslate() - a.minTranslate()) / (T.maxTranslate() - T.minTranslate()), r = (e - T.minTranslate()) * i + a.minTranslate()), T.params.controlInverse && (r = a.maxTranslate() - r), a.updateProgress(r), a.setWrapperTranslate(r, !1, T), a.updateActiveIndex()
// 					}
// 					var i, r, n = T.params.control;
// 					if (Array.isArray(n))
// 						for (var o = 0; o < n.length; o++) n[o] !== t && n[o] instanceof a && s(n[o]);
// 					else n instanceof a && t !== n && s(n)
// 				},
// 				setTransition: function (e, t) {
// 					function s(a) {
// 						a.setWrapperTransition(e, T), 0 !== e && (a.onTransitionStart(), a.wrapper.transitionEnd(function () {
// 							r && (a.params.loop && "slide" === T.params.controlBy && a.fixLoop(), a.onTransitionEnd())
// 						}))
// 					}
// 					var i, r = T.params.control;
// 					if (Array.isArray(r))
// 						for (i = 0; i < r.length; i++) r[i] !== t && r[i] instanceof a && s(r[i]);
// 					else r instanceof a && t !== r && s(r)
// 				}
// 			}, T.hashnav = {
// 				onHashCange: function (e, a) {
// 					var t = document.location.hash.replace("#", "");
// 					t !== T.slides.eq(T.activeIndex).attr("data-hash") && T.slideTo(T.wrapper.children("." + T.params.slideClass + '[data-hash="' + t + '"]').index())
// 				},
// 				attachEvents: function (a) {
// 					var t = a ? "off" : "on";
// 					e(window)[t]("hashchange", T.hashnav.onHashCange)
// 				},
// 				setHash: function () {
// 					if (T.hashnav.initialized && T.params.hashnav)
// 						if (T.params.replaceState && window.history && window.history.replaceState) window.history.replaceState(null, null, "#" + T.slides.eq(T.activeIndex).attr("data-hash") || "");
// 						else {
// 							var e = T.slides.eq(T.activeIndex),
// 								a = e.attr("data-hash") || e.attr("data-history");
// 							document.location.hash = a || ""
// 						}
// 				},
// 				init: function () {
// 					if (T.params.hashnav && !T.params.history) {
// 						T.hashnav.initialized = !0;
// 						var e = document.location.hash.replace("#", "");
// 						if (e)
// 							for (var a = 0, t = T.slides.length; a < t; a++) {
// 								var s = T.slides.eq(a),
// 									i = s.attr("data-hash") || s.attr("data-history");
// 								if (i === e && !s.hasClass(T.params.slideDuplicateClass)) {
// 									var r = s.index();
// 									T.slideTo(r, 0, T.params.runCallbacksOnInit, !0)
// 								}
// 							}
// 						T.params.hashnavWatchState && T.hashnav.attachEvents()
// 					}
// 				},
// 				destroy: function () {
// 					T.params.hashnavWatchState && T.hashnav.attachEvents(!0)
// 				}
// 			}, T.history = {
// 				init: function () {
// 					if (T.params.history) {
// 						if (!window.history || !window.history.pushState) return T.params.history = !1, void(T.params.hashnav = !0);
// 						T.history.initialized = !0, this.paths = this.getPathValues(), (this.paths.key || this.paths.value) && (this.scrollToSlide(0, this.paths.value, T.params.runCallbacksOnInit), T.params.replaceState || window.addEventListener("popstate", this.setHistoryPopState))
// 					}
// 				},
// 				setHistoryPopState: function () {
// 					T.history.paths = T.history.getPathValues(), T.history.scrollToSlide(T.params.speed, T.history.paths.value, !1)
// 				},
// 				getPathValues: function () {
// 					var e = window.location.pathname.slice(1).split("/"),
// 						a = e.length;
// 					return {
// 						key: e[a - 2],
// 						value: e[a - 1]
// 					}
// 				},
// 				setHistory: function (e, a) {
// 					if (T.history.initialized && T.params.history) {
// 						var t = T.slides.eq(a),
// 							s = this.slugify(t.attr("data-history"));
// 						window.location.pathname.includes(e) || (s = e + "/" + s), T.params.replaceState ? window.history.replaceState(null, null, s) : window.history.pushState(null, null, s)
// 					}
// 				},
// 				slugify: function (e) {
// 					return e.toString().toLowerCase().replace(/\s+/g, "-").replace(/[^\w\-]+/g, "").replace(/\-\-+/g, "-").replace(/^-+/, "").replace(/-+$/, "")
// 				},
// 				scrollToSlide: function (e, a, t) {
// 					if (a)
// 						for (var s = 0, i = T.slides.length; s < i; s++) {
// 							var r = T.slides.eq(s),
// 								n = this.slugify(r.attr("data-history"));
// 							if (n === a && !r.hasClass(T.params.slideDuplicateClass)) {
// 								var o = r.index();
// 								T.slideTo(o, e, t)
// 							}
// 						} else T.slideTo(0, e, t)
// 				}
// 			}, T.disableKeyboardControl = function () {
// 				T.params.keyboardControl = !1, e(document).off("keydown", p)
// 			}, T.enableKeyboardControl = function () {
// 				T.params.keyboardControl = !0, e(document).on("keydown", p)
// 			}, T.mousewheel = {
// 				event: !1,
// 				lastScrollTime: (new window.Date).getTime()
// 			}, T.params.mousewheelControl && (T.mousewheel.event = navigator.userAgent.indexOf("firefox") > -1 ? "DOMMouseScroll" : function () {
// 				var e = "onwheel" in document;
// 				if (!e) {
// 					var a = document.createElement("div");
// 					a.setAttribute("onwheel", "return;"), e = "function" == typeof a.onwheel
// 				}
// 				return !e && document.implementation && document.implementation.hasFeature && document.implementation.hasFeature("", "") !== !0 && (e = document.implementation.hasFeature("Events.wheel", "3.0")), e
// 			}() ? "wheel" : "mousewheel"), T.disableMousewheelControl = function () {
// 				if (!T.mousewheel.event) return !1;
// 				var a = T.container;
// 				return "container" !== T.params.mousewheelEventsTarged && (a = e(T.params.mousewheelEventsTarged)), a.off(T.mousewheel.event, u), T.params.mousewheelControl = !1, !0
// 			}, T.enableMousewheelControl = function () {
// 				if (!T.mousewheel.event) return !1;
// 				var a = T.container;
// 				return "container" !== T.params.mousewheelEventsTarged && (a = e(T.params.mousewheelEventsTarged)), a.on(T.mousewheel.event, u), T.params.mousewheelControl = !0, !0
// 			}, T.parallax = {
// 				setTranslate: function () {
// 					T.container.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function () {
// 						c(this, T.progress)
// 					}), T.slides.each(function () {
// 						var a = e(this);
// 						a.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function () {
// 							c(this, Math.min(Math.max(a[0].progress, -1), 1))
// 						})
// 					})
// 				},
// 				setTransition: function (a) {
// 					void 0 === a && (a = T.params.speed), T.container.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function () {
// 						var t = e(this),
// 							s = parseInt(t.attr("data-swiper-parallax-duration"), 10) || a;
// 						0 === a && (s = 0), t.transition(s)
// 					})
// 				}
// 			}, T.zoom = {
// 				scale: 1,
// 				currentScale: 1,
// 				isScaling: !1,
// 				gesture: {
// 					slide: void 0,
// 					slideWidth: void 0,
// 					slideHeight: void 0,
// 					image: void 0,
// 					imageWrap: void 0,
// 					zoomMax: T.params.zoomMax
// 				},
// 				image: {
// 					isTouched: void 0,
// 					isMoved: void 0,
// 					currentX: void 0,
// 					currentY: void 0,
// 					minX: void 0,
// 					minY: void 0,
// 					maxX: void 0,
// 					maxY: void 0,
// 					width: void 0,
// 					height: void 0,
// 					startX: void 0,
// 					startY: void 0,
// 					touchesStart: {},
// 					touchesCurrent: {}
// 				},
// 				velocity: {
// 					x: void 0,
// 					y: void 0,
// 					prevPositionX: void 0,
// 					prevPositionY: void 0,
// 					prevTime: void 0
// 				},
// 				getDistanceBetweenTouches: function (e) {
// 					if (e.targetTouches.length < 2) return 1;
// 					var a = e.targetTouches[0].pageX,
// 						t = e.targetTouches[0].pageY,
// 						s = e.targetTouches[1].pageX,
// 						i = e.targetTouches[1].pageY;
// 					return Math.sqrt(Math.pow(s - a, 2) + Math.pow(i - t, 2))
// 				},
// 				onGestureStart: function (a) {
// 					var t = T.zoom;
// 					if (!T.support.gestures) {
// 						if ("touchstart" !== a.type || "touchstart" === a.type && a.targetTouches.length < 2) return;
// 						t.gesture.scaleStart = t.getDistanceBetweenTouches(a)
// 					}
// 					if (!(t.gesture.slide && t.gesture.slide.length || (t.gesture.slide = e(this), 0 === t.gesture.slide.length && (t.gesture.slide = T.slides.eq(T.activeIndex)), t.gesture.image = t.gesture.slide.find("img, svg, canvas"), t.gesture.imageWrap = t.gesture.image.parent("." + T.params.zoomContainerClass), t.gesture.zoomMax = t.gesture.imageWrap.attr("data-swiper-zoom") || T.params.zoomMax, 0 !== t.gesture.imageWrap.length))) return void(t.gesture.image = void 0);
// 					t.gesture.image.transition(0), t.isScaling = !0
// 				},
// 				onGestureChange: function (e) {
// 					var a = T.zoom;
// 					if (!T.support.gestures) {
// 						if ("touchmove" !== e.type || "touchmove" === e.type && e.targetTouches.length < 2) return;
// 						a.gesture.scaleMove = a.getDistanceBetweenTouches(e)
// 					}
// 					a.gesture.image && 0 !== a.gesture.image.length && (T.support.gestures ? a.scale = e.scale * a.currentScale : a.scale = a.gesture.scaleMove / a.gesture.scaleStart * a.currentScale, a.scale > a.gesture.zoomMax && (a.scale = a.gesture.zoomMax - 1 + Math.pow(a.scale - a.gesture.zoomMax + 1, .5)), a.scale < T.params.zoomMin && (a.scale = T.params.zoomMin + 1 - Math.pow(T.params.zoomMin - a.scale + 1, .5)), a.gesture.image.transform("translate3d(0,0,0) scale(" + a.scale + ")"))
// 				},
// 				onGestureEnd: function (e) {
// 					var a = T.zoom;
// 					!T.support.gestures && ("touchend" !== e.type || "touchend" === e.type && e.changedTouches.length < 2) || a.gesture.image && 0 !== a.gesture.image.length && (a.scale = Math.max(Math.min(a.scale, a.gesture.zoomMax), T.params.zoomMin), a.gesture.image.transition(T.params.speed).transform("translate3d(0,0,0) scale(" + a.scale + ")"), a.currentScale = a.scale, a.isScaling = !1, 1 === a.scale && (a.gesture.slide = void 0))
// 				},
// 				onTouchStart: function (e, a) {
// 					var t = e.zoom;
// 					t.gesture.image && 0 !== t.gesture.image.length && (t.image.isTouched || ("android" === e.device.os && a.preventDefault(), t.image.isTouched = !0, t.image.touchesStart.x = "touchstart" === a.type ? a.targetTouches[0].pageX : a.pageX, t.image.touchesStart.y = "touchstart" === a.type ? a.targetTouches[0].pageY : a.pageY))
// 				},
// 				onTouchMove: function (e) {
// 					var a = T.zoom;
// 					if (a.gesture.image && 0 !== a.gesture.image.length && (T.allowClick = !1, a.image.isTouched && a.gesture.slide)) {
// 						a.image.isMoved || (a.image.width = a.gesture.image[0].offsetWidth, a.image.height = a.gesture.image[0].offsetHeight, a.image.startX = T.getTranslate(a.gesture.imageWrap[0], "x") || 0, a.image.startY = T.getTranslate(a.gesture.imageWrap[0], "y") || 0, a.gesture.slideWidth = a.gesture.slide[0].offsetWidth, a.gesture.slideHeight = a.gesture.slide[0].offsetHeight, a.gesture.imageWrap.transition(0), T.rtl && (a.image.startX = -a.image.startX), T.rtl && (a.image.startY = -a.image.startY));
// 						var t = a.image.width * a.scale,
// 							s = a.image.height * a.scale;
// 						if (!(t < a.gesture.slideWidth && s < a.gesture.slideHeight)) {
// 							if (a.image.minX = Math.min(a.gesture.slideWidth / 2 - t / 2, 0), a.image.maxX = -a.image.minX, a.image.minY = Math.min(a.gesture.slideHeight / 2 - s / 2, 0), a.image.maxY = -a.image.minY, a.image.touchesCurrent.x = "touchmove" === e.type ? e.targetTouches[0].pageX : e.pageX, a.image.touchesCurrent.y = "touchmove" === e.type ? e.targetTouches[0].pageY : e.pageY, !a.image.isMoved && !a.isScaling) {
// 								if (T.isHorizontal() && Math.floor(a.image.minX) === Math.floor(a.image.startX) && a.image.touchesCurrent.x < a.image.touchesStart.x || Math.floor(a.image.maxX) === Math.floor(a.image.startX) && a.image.touchesCurrent.x > a.image.touchesStart.x) return void(a.image.isTouched = !1);
// 								if (!T.isHorizontal() && Math.floor(a.image.minY) === Math.floor(a.image.startY) && a.image.touchesCurrent.y < a.image.touchesStart.y || Math.floor(a.image.maxY) === Math.floor(a.image.startY) && a.image.touchesCurrent.y > a.image.touchesStart.y) return void(a.image.isTouched = !1)
// 							}
// 							e.preventDefault(), e.stopPropagation(), a.image.isMoved = !0, a.image.currentX = a.image.touchesCurrent.x - a.image.touchesStart.x + a.image.startX, a.image.currentY = a.image.touchesCurrent.y - a.image.touchesStart.y + a.image.startY, a.image.currentX < a.image.minX && (a.image.currentX = a.image.minX + 1 - Math.pow(a.image.minX - a.image.currentX + 1, .8)), a.image.currentX > a.image.maxX && (a.image.currentX = a.image.maxX - 1 + Math.pow(a.image.currentX - a.image.maxX + 1, .8)), a.image.currentY < a.image.minY && (a.image.currentY = a.image.minY + 1 - Math.pow(a.image.minY - a.image.currentY + 1, .8)), a.image.currentY > a.image.maxY && (a.image.currentY = a.image.maxY - 1 + Math.pow(a.image.currentY - a.image.maxY + 1, .8)), a.velocity.prevPositionX || (a.velocity.prevPositionX = a.image.touchesCurrent.x), a.velocity.prevPositionY || (a.velocity.prevPositionY = a.image.touchesCurrent.y), a.velocity.prevTime || (a.velocity.prevTime = Date.now()), a.velocity.x = (a.image.touchesCurrent.x - a.velocity.prevPositionX) / (Date.now() - a.velocity.prevTime) / 2, a.velocity.y = (a.image.touchesCurrent.y - a.velocity.prevPositionY) / (Date.now() - a.velocity.prevTime) / 2, Math.abs(a.image.touchesCurrent.x - a.velocity.prevPositionX) < 2 && (a.velocity.x = 0), Math.abs(a.image.touchesCurrent.y - a.velocity.prevPositionY) < 2 && (a.velocity.y = 0), a.velocity.prevPositionX = a.image.touchesCurrent.x, a.velocity.prevPositionY = a.image.touchesCurrent.y, a.velocity.prevTime = Date.now(), a.gesture.imageWrap.transform("translate3d(" + a.image.currentX + "px, " + a.image.currentY + "px,0)")
// 						}
// 					}
// 				},
// 				onTouchEnd: function (e, a) {
// 					var t = e.zoom;
// 					if (t.gesture.image && 0 !== t.gesture.image.length) {
// 						if (!t.image.isTouched || !t.image.isMoved) return t.image.isTouched = !1, void(t.image.isMoved = !1);
// 						t.image.isTouched = !1, t.image.isMoved = !1;
// 						var s = 300,
// 							i = 300,
// 							r = t.velocity.x * s,
// 							n = t.image.currentX + r,
// 							o = t.velocity.y * i,
// 							l = t.image.currentY + o;
// 						0 !== t.velocity.x && (s = Math.abs((n - t.image.currentX) / t.velocity.x)), 0 !== t.velocity.y && (i = Math.abs((l - t.image.currentY) / t.velocity.y));
// 						var p = Math.max(s, i);
// 						t.image.currentX = n, t.image.currentY = l;
// 						var d = t.image.width * t.scale,
// 							u = t.image.height * t.scale;
// 						t.image.minX = Math.min(t.gesture.slideWidth / 2 - d / 2, 0), t.image.maxX = -t.image.minX, t.image.minY = Math.min(t.gesture.slideHeight / 2 - u / 2, 0), t.image.maxY = -t.image.minY, t.image.currentX = Math.max(Math.min(t.image.currentX, t.image.maxX), t.image.minX), t.image.currentY = Math.max(Math.min(t.image.currentY, t.image.maxY), t.image.minY), t.gesture.imageWrap.transition(p).transform("translate3d(" + t.image.currentX + "px, " + t.image.currentY + "px,0)")
// 					}
// 				},
// 				onTransitionEnd: function (e) {
// 					var a = e.zoom;
// 					a.gesture.slide && e.previousIndex !== e.activeIndex && (a.gesture.image.transform("translate3d(0,0,0) scale(1)"), a.gesture.imageWrap.transform("translate3d(0,0,0)"), a.gesture.slide = a.gesture.image = a.gesture.imageWrap = void 0, a.scale = a.currentScale = 1)
// 				},
// 				toggleZoom: function (a, t) {
// 					var s = a.zoom;
// 					if (s.gesture.slide || (s.gesture.slide = a.clickedSlide ? e(a.clickedSlide) : a.slides.eq(a.activeIndex), s.gesture.image = s.gesture.slide.find("img, svg, canvas"), s.gesture.imageWrap = s.gesture.image.parent("." + a.params.zoomContainerClass)), s.gesture.image && 0 !== s.gesture.image.length) {
// 						var i, r, n, o, l, p, d, u, c, m, h, g, f, v, w, y, x, T;
// 						void 0 === s.image.touchesStart.x && t ? (i = "touchend" === t.type ? t.changedTouches[0].pageX : t.pageX, r = "touchend" === t.type ? t.changedTouches[0].pageY : t.pageY) : (i = s.image.touchesStart.x, r = s.image.touchesStart.y), s.scale && 1 !== s.scale ? (s.scale = s.currentScale = 1, s.gesture.imageWrap.transition(300).transform("translate3d(0,0,0)"), s.gesture.image.transition(300).transform("translate3d(0,0,0) scale(1)"), s.gesture.slide = void 0) : (s.scale = s.currentScale = s.gesture.imageWrap.attr("data-swiper-zoom") || a.params.zoomMax, t ? (x = s.gesture.slide[0].offsetWidth, T = s.gesture.slide[0].offsetHeight, n = s.gesture.slide.offset().left, o = s.gesture.slide.offset().top, l = n + x / 2 - i, p = o + T / 2 - r, c = s.gesture.image[0].offsetWidth, m = s.gesture.image[0].offsetHeight, h = c * s.scale, g = m * s.scale, f = Math.min(x / 2 - h / 2, 0), v = Math.min(T / 2 - g / 2, 0), w = -f, y = -v, d = l * s.scale, u = p * s.scale, d < f && (d = f), d > w && (d = w), u < v && (u = v), u > y && (u = y)) : (d = 0, u = 0), s.gesture.imageWrap.transition(300).transform("translate3d(" + d + "px, " + u + "px,0)"), s.gesture.image.transition(300).transform("translate3d(0,0,0) scale(" + s.scale + ")"))
// 					}
// 				},
// 				attachEvents: function (a) {
// 					var t = a ? "off" : "on";
// 					if (T.params.zoom) {
// 						var s = (T.slides, !("touchstart" !== T.touchEvents.start || !T.support.passiveListener || !T.params.passiveListeners) && {
// 							passive: !0,
// 							capture: !1
// 						});
// 						T.support.gestures ? (T.slides[t]("gesturestart", T.zoom.onGestureStart, s), T.slides[t]("gesturechange", T.zoom.onGestureChange, s), T.slides[t]("gestureend", T.zoom.onGestureEnd, s)) : "touchstart" === T.touchEvents.start && (T.slides[t](T.touchEvents.start, T.zoom.onGestureStart, s), T.slides[t](T.touchEvents.move, T.zoom.onGestureChange, s), T.slides[t](T.touchEvents.end, T.zoom.onGestureEnd, s)), T[t]("touchStart", T.zoom.onTouchStart), T.slides.each(function (a, s) {
// 							e(s).find("." + T.params.zoomContainerClass).length > 0 && e(s)[t](T.touchEvents.move, T.zoom.onTouchMove)
// 						}), T[t]("touchEnd", T.zoom.onTouchEnd), T[t]("transitionEnd", T.zoom.onTransitionEnd), T.params.zoomToggle && T.on("doubleTap", T.zoom.toggleZoom)
// 					}
// 				},
// 				init: function () {
// 					T.zoom.attachEvents()
// 				},
// 				destroy: function () {
// 					T.zoom.attachEvents(!0)
// 				}
// 			}, T._plugins = [];
// 			for (var Y in T.plugins) {
// 				var O = T.plugins[Y](T, T.params[Y]);
// 				O && T._plugins.push(O)
// 			}
// 			return T.callPlugins = function (e) {
// 				for (var a = 0; a < T._plugins.length; a++) e in T._plugins[a] && T._plugins[a][e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5])
// 			}, T.emitterEventListeners = {}, T.emit = function (e) {
// 				T.params[e] && T.params[e](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
// 				var a;
// 				if (T.emitterEventListeners[e])
// 					for (a = 0; a < T.emitterEventListeners[e].length; a++) T.emitterEventListeners[e][a](arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
// 				T.callPlugins && T.callPlugins(e, arguments[1], arguments[2], arguments[3], arguments[4], arguments[5])
// 			}, T.on = function (e, a) {
// 				return e = m(e), T.emitterEventListeners[e] || (T.emitterEventListeners[e] = []), T.emitterEventListeners[e].push(a), T
// 			}, T.off = function (e, a) {
// 				var t;
// 				if (e = m(e), void 0 === a) return T.emitterEventListeners[e] = [], T;
// 				if (T.emitterEventListeners[e] && 0 !== T.emitterEventListeners[e].length) {
// 					for (t = 0; t < T.emitterEventListeners[e].length; t++) T.emitterEventListeners[e][t] === a && T.emitterEventListeners[e].splice(t, 1);
// 					return T
// 				}
// 			}, T.once = function (e, a) {
// 				e = m(e);
// 				var t = function () {
// 					a(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4]), T.off(e, t)
// 				};
// 				return T.on(e, t), T
// 			}, T.a11y = {
// 				makeFocusable: function (e) {
// 					return e.attr("tabIndex", "0"), e
// 				},
// 				addRole: function (e, a) {
// 					return e.attr("role", a), e
// 				},
// 				addLabel: function (e, a) {
// 					return e.attr("aria-label", a), e
// 				},
// 				disable: function (e) {
// 					return e.attr("aria-disabled", !0), e
// 				},
// 				enable: function (e) {
// 					return e.attr("aria-disabled", !1), e
// 				},
// 				onEnterKey: function (a) {
// 					13 === a.keyCode && (e(a.target).is(T.params.nextButton) ? (T.onClickNext(a), T.isEnd ? T.a11y.notify(T.params.lastSlideMessage) : T.a11y.notify(T.params.nextSlideMessage)) : e(a.target).is(T.params.prevButton) && (T.onClickPrev(a), T.isBeginning ? T.a11y.notify(T.params.firstSlideMessage) : T.a11y.notify(T.params.prevSlideMessage)), e(a.target).is("." + T.params.bulletClass) && e(a.target)[0].click())
// 				},
// 				liveRegion: e('<span class="' + T.params.notificationClass + '" aria-live="assertive" aria-atomic="true"></span>'),
// 				notify: function (e) {
// 					var a = T.a11y.liveRegion;
// 					0 !== a.length && (a.html(""), a.html(e))
// 				},
// 				init: function () {
// 					T.params.nextButton && T.nextButton && T.nextButton.length > 0 && (T.a11y.makeFocusable(T.nextButton), T.a11y.addRole(T.nextButton, "button"), T.a11y.addLabel(T.nextButton, T.params.nextSlideMessage)), T.params.prevButton && T.prevButton && T.prevButton.length > 0 && (T.a11y.makeFocusable(T.prevButton), T.a11y.addRole(T.prevButton, "button"), T.a11y.addLabel(T.prevButton, T.params.prevSlideMessage)), e(T.container).append(T.a11y.liveRegion)
// 				},
// 				initPagination: function () {
// 					T.params.pagination && T.params.paginationClickable && T.bullets && T.bullets.length && T.bullets.each(function () {
// 						var a = e(this);
// 						T.a11y.makeFocusable(a), T.a11y.addRole(a, "button"), T.a11y.addLabel(a, T.params.paginationBulletMessage.replace(/{{index}}/, a.index() + 1))
// 					})
// 				},
// 				destroy: function () {
// 					T.a11y.liveRegion && T.a11y.liveRegion.length > 0 && T.a11y.liveRegion.remove()
// 				}
// 			}, T.init = function () {
// 				T.params.loop && T.createLoop(), T.updateContainerSize(), T.updateSlidesSize(), T.updatePagination(), T.params.scrollbar && T.scrollbar && (T.scrollbar.set(), T.params.scrollbarDraggable && T.scrollbar.enableDraggable()), "slide" !== T.params.effect && T.effects[T.params.effect] && (T.params.loop || T.updateProgress(), T.effects[T.params.effect].setTranslate()), T.params.loop ? T.slideTo(T.params.initialSlide + T.loopedSlides, 0, T.params.runCallbacksOnInit) : (T.slideTo(T.params.initialSlide, 0, T.params.runCallbacksOnInit), 0 === T.params.initialSlide && (T.parallax && T.params.parallax && T.parallax.setTranslate(), T.lazy && T.params.lazyLoading && (T.lazy.load(), T.lazy.initialImageLoaded = !0))), T.attachEvents(), T.params.observer && T.support.observer && T.initObservers(), T.params.preloadImages && !T.params.lazyLoading && T.preloadImages(), T.params.zoom && T.zoom && T.zoom.init(), T.params.autoplay && T.startAutoplay(), T.params.keyboardControl && T.enableKeyboardControl && T.enableKeyboardControl(), T.params.mousewheelControl && T.enableMousewheelControl && T.enableMousewheelControl(), T.params.hashnavReplaceState && (T.params.replaceState = T.params.hashnavReplaceState), T.params.history && T.history && T.history.init(), T.params.hashnav && T.hashnav && T.hashnav.init(), T.params.a11y && T.a11y && T.a11y.init(), T.emit("onInit", T)
// 			}, T.cleanupStyles = function () {
// 				T.container.removeClass(T.classNames.join(" ")).removeAttr("style"), T.wrapper.removeAttr("style"), T.slides && T.slides.length && T.slides.removeClass([T.params.slideVisibleClass, T.params.slideActiveClass, T.params.slideNextClass, T.params.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-column").removeAttr("data-swiper-row"), T.paginationContainer && T.paginationContainer.length && T.paginationContainer.removeClass(T.params.paginationHiddenClass), T.bullets && T.bullets.length && T.bullets.removeClass(T.params.bulletActiveClass), T.params.prevButton && e(T.params.prevButton).removeClass(T.params.buttonDisabledClass), T.params.nextButton && e(T.params.nextButton).removeClass(T.params.buttonDisabledClass), T.params.scrollbar && T.scrollbar && (T.scrollbar.track && T.scrollbar.track.length && T.scrollbar.track.removeAttr("style"), T.scrollbar.drag && T.scrollbar.drag.length && T.scrollbar.drag.removeAttr("style"))
// 			}, T.destroy = function (e, a) {
// 				T.detachEvents(), T.stopAutoplay(), T.params.scrollbar && T.scrollbar && T.params.scrollbarDraggable && T.scrollbar.disableDraggable(), T.params.loop && T.destroyLoop(), a && T.cleanupStyles(), T.disconnectObservers(), T.params.zoom && T.zoom && T.zoom.destroy(), T.params.keyboardControl && T.disableKeyboardControl && T.disableKeyboardControl(), T.params.mousewheelControl && T.disableMousewheelControl && T.disableMousewheelControl(), T.params.a11y && T.a11y && T.a11y.destroy(), T.params.history && !T.params.replaceState && window.removeEventListener("popstate", T.history.setHistoryPopState), T.params.hashnav && T.hashnav && T.hashnav.destroy(), T.emit("onDestroy"), e !== !1 && (T = null)
// 			}, T.init(), T
// 		}
// 	};
// 	a.prototype = {
// 		isSafari: function () {
// 			var e = window.navigator.userAgent.toLowerCase();
// 			return e.indexOf("safari") >= 0 && e.indexOf("chrome") < 0 && e.indexOf("android") < 0
// 		}(),
// 		isUiWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),
// 		isArray: function (e) {
// 			return "[object Array]" === Object.prototype.toString.apply(e)
// 		},
// 		browser: {
// 			ie: window.navigator.pointerEnabled || window.navigator.msPointerEnabled,
// 			ieTouch: window.navigator.msPointerEnabled && window.navigator.msMaxTouchPoints > 1 || window.navigator.pointerEnabled && window.navigator.maxTouchPoints > 1,
// 			lteIE9: function () {
// 				var e = document.createElement("div");
// 				return e.innerHTML = "<!--[if lte IE 9]><i></i><![endif]-->", 1 === e.getElementsByTagName("i").length
// 			}()
// 		},
// 		device: function () {
// 			var e = window.navigator.userAgent,
// 				a = e.match(/(Android);?[\s\/]+([\d.]+)?/),
// 				t = e.match(/(iPad).*OS\s([\d_]+)/),
// 				s = e.match(/(iPod)(.*OS\s([\d_]+))?/),
// 				i = !t && e.match(/(iPhone\sOS|iOS)\s([\d_]+)/);
// 			return {
// 				ios: t || i || s,
// 				android: a
// 			}
// 		}(),
// 		support: {
// 			touch: window.Modernizr && Modernizr.touch === !0 || function () {
// 				return !!("ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch)
// 			}(),
// 			transforms3d: window.Modernizr && Modernizr.csstransforms3d === !0 || function () {
// 				var e = document.createElement("div").style;
// 				return "webkitPerspective" in e || "MozPerspective" in e || "OPerspective" in e || "MsPerspective" in e || "perspective" in e
// 			}(),
// 			flexbox: function () {
// 				for (var e = document.createElement("div").style, a = "alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient".split(" "), t = 0; t < a.length; t++)
// 					if (a[t] in e) return !0
// 			}(),
// 			observer: function () {
// 				return "MutationObserver" in window || "WebkitMutationObserver" in window
// 			}(),
// 			passiveListener: function () {
// 				var e = !1;
// 				try {
// 					var a = Object.defineProperty({}, "passive", {
// 						get: function () {
// 							e = !0
// 						}
// 					});
// 					window.addEventListener("testPassiveListener", null, a)
// 				} catch (e) {}
// 				return e
// 			}(),
// 			gestures: function () {
// 				return "ongesturestart" in window
// 			}()
// 		},
// 		plugins: {}
// 	};
// 	for (var t = (function () {
// 			var e = function (e) {
// 					var a = this,
// 						t = 0;
// 					for (t = 0; t < e.length; t++) a[t] = e[t];
// 					return a.length = e.length, this
// 				},
// 				a = function (a, t) {
// 					var s = [],
// 						i = 0;
// 					if (a && !t && a instanceof e) return a;
// 					if (a)
// 						if ("string" == typeof a) {
// 							var r, n, o = a.trim();
// 							if (o.indexOf("<") >= 0 && o.indexOf(">") >= 0) {
// 								var l = "div";
// 								for (0 === o.indexOf("<li") && (l = "ul"), 0 === o.indexOf("<tr") && (l = "tbody"), 0 !== o.indexOf("<td") && 0 !== o.indexOf("<th") || (l = "tr"), 0 === o.indexOf("<tbody") && (l = "table"), 0 === o.indexOf("<option") && (l = "select"), n = document.createElement(l), n.innerHTML = a, i = 0; i < n.childNodes.length; i++) s.push(n.childNodes[i])
// 							} else
// 								for (r = t || "#" !== a[0] || a.match(/[ .<>:~]/) ? (t || document).querySelectorAll(a) : [document.getElementById(a.split("#")[1])], i = 0; i < r.length; i++) r[i] && s.push(r[i])
// 						} else if (a.nodeType || a === window || a === document) s.push(a);
// 					else if (a.length > 0 && a[0].nodeType)
// 						for (i = 0; i < a.length; i++) s.push(a[i]);
// 					return new e(s)
// 				};
// 			return e.prototype = {
// 				addClass: function (e) {
// 					if (void 0 === e) return this;
// 					for (var a = e.split(" "), t = 0; t < a.length; t++)
// 						for (var s = 0; s < this.length; s++) this[s].classList.add(a[t]);
// 					return this
// 				},
// 				removeClass: function (e) {
// 					for (var a = e.split(" "), t = 0; t < a.length; t++)
// 						for (var s = 0; s < this.length; s++) this[s].classList.remove(a[t]);
// 					return this
// 				},
// 				hasClass: function (e) {
// 					return !!this[0] && this[0].classList.contains(e)
// 				},
// 				toggleClass: function (e) {
// 					for (var a = e.split(" "), t = 0; t < a.length; t++)
// 						for (var s = 0; s < this.length; s++) this[s].classList.toggle(a[t]);
// 					return this
// 				},
// 				attr: function (e, a) {
// 					if (1 === arguments.length && "string" == typeof e) return this[0] ? this[0].getAttribute(e) : void 0;
// 					for (var t = 0; t < this.length; t++)
// 						if (2 === arguments.length) this[t].setAttribute(e, a);
// 						else
// 							for (var s in e) this[t][s] = e[s], this[t].setAttribute(s, e[s]);
// 					return this
// 				},
// 				removeAttr: function (e) {
// 					for (var a = 0; a < this.length; a++) this[a].removeAttribute(e);
// 					return this
// 				},
// 				data: function (e, a) {
// 					if (void 0 !== a) {
// 						for (var t = 0; t < this.length; t++) {
// 							var s = this[t];
// 							s.dom7ElementDataStorage || (s.dom7ElementDataStorage = {}), s.dom7ElementDataStorage[e] = a
// 						}
// 						return this
// 					}
// 					if (this[0]) {
// 						var i = this[0].getAttribute("data-" + e);
// 						return i ? i : this[0].dom7ElementDataStorage && e in this[0].dom7ElementDataStorage ? this[0].dom7ElementDataStorage[e] : void 0
// 					}
// 				},
// 				transform: function (e) {
// 					for (var a = 0; a < this.length; a++) {
// 						var t = this[a].style;
// 						t.webkitTransform = t.MsTransform = t.msTransform = t.MozTransform = t.OTransform = t.transform = e
// 					}
// 					return this
// 				},
// 				transition: function (e) {
// 					"string" != typeof e && (e += "ms");
// 					for (var a = 0; a < this.length; a++) {
// 						var t = this[a].style;
// 						t.webkitTransitionDuration = t.MsTransitionDuration = t.msTransitionDuration = t.MozTransitionDuration = t.OTransitionDuration = t.transitionDuration = e
// 					}
// 					return this
// 				},
// 				on: function (e, t, s, i) {
// 					function r(e) {
// 						var i = e.target;
// 						if (a(i).is(t)) s.call(i, e);
// 						else
// 							for (var r = a(i).parents(), n = 0; n < r.length; n++) a(r[n]).is(t) && s.call(r[n], e)
// 					}
// 					var n, o, l = e.split(" ");
// 					for (n = 0; n < this.length; n++)
// 						if ("function" == typeof t || t === !1)
// 							for ("function" == typeof t && (s = arguments[1], i = arguments[2] || !1), o = 0; o < l.length; o++) this[n].addEventListener(l[o], s, i);
// 						else
// 							for (o = 0; o < l.length; o++) this[n].dom7LiveListeners || (this[n].dom7LiveListeners = []), this[n].dom7LiveListeners.push({
// 								listener: s,
// 								liveListener: r
// 							}), this[n].addEventListener(l[o], r, i);
// 					return this
// 				},
// 				off: function (e, a, t, s) {
// 					for (var i = e.split(" "), r = 0; r < i.length; r++)
// 						for (var n = 0; n < this.length; n++)
// 							if ("function" == typeof a || a === !1) "function" == typeof a && (t = arguments[1], s = arguments[2] || !1), this[n].removeEventListener(i[r], t, s);
// 							else if (this[n].dom7LiveListeners)
// 						for (var o = 0; o < this[n].dom7LiveListeners.length; o++) this[n].dom7LiveListeners[o].listener === t && this[n].removeEventListener(i[r], this[n].dom7LiveListeners[o].liveListener, s);
// 					return this
// 				},
// 				once: function (e, a, t, s) {
// 					function i(n) {
// 						t(n), r.off(e, a, i, s)
// 					}
// 					var r = this;
// 					"function" == typeof a && (a = !1, t = arguments[1], s = arguments[2]), r.on(e, a, i, s)
// 				},
// 				trigger: function (e, a) {
// 					for (var t = 0; t < this.length; t++) {
// 						var s;
// 						try {
// 							s = new window.CustomEvent(e, {
// 								detail: a,
// 								bubbles: !0,
// 								cancelable: !0
// 							})
// 						} catch (t) {
// 							s = document.createEvent("Event"), s.initEvent(e, !0, !0), s.detail = a
// 						}
// 						this[t].dispatchEvent(s)
// 					}
// 					return this
// 				},
// 				transitionEnd: function (e) {
// 					function a(r) {
// 						if (r.target === this)
// 							for (e.call(this, r), t = 0; t < s.length; t++) i.off(s[t], a)
// 					}
// 					var t, s = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"],
// 						i = this;
// 					if (e)
// 						for (t = 0; t < s.length; t++) i.on(s[t], a);
// 					return this
// 				},
// 				width: function () {
// 					return this[0] === window ? window.innerWidth : this.length > 0 ? parseFloat(this.css("width")) : null
// 				},
// 				outerWidth: function (e) {
// 					return this.length > 0 ? e ? this[0].offsetWidth + parseFloat(this.css("margin-right")) + parseFloat(this.css("margin-left")) : this[0].offsetWidth : null
// 				},
// 				height: function () {
// 					return this[0] === window ? window.innerHeight : this.length > 0 ? parseFloat(this.css("height")) : null
// 				},
// 				outerHeight: function (e) {
// 					return this.length > 0 ? e ? this[0].offsetHeight + parseFloat(this.css("margin-top")) + parseFloat(this.css("margin-bottom")) : this[0].offsetHeight : null
// 				},
// 				offset: function () {
// 					if (this.length > 0) {
// 						var e = this[0],
// 							a = e.getBoundingClientRect(),
// 							t = document.body,
// 							s = e.clientTop || t.clientTop || 0,
// 							i = e.clientLeft || t.clientLeft || 0,
// 							r = window.pageYOffset || e.scrollTop,
// 							n = window.pageXOffset || e.scrollLeft;
// 						return {
// 							top: a.top + r - s,
// 							left: a.left + n - i
// 						}
// 					}
// 					return null
// 				},
// 				css: function (e, a) {
// 					var t;
// 					if (1 === arguments.length) {
// 						if ("string" != typeof e) {
// 							for (t = 0; t < this.length; t++)
// 								for (var s in e) this[t].style[s] = e[s];
// 							return this
// 						}
// 						if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(e)
// 					}
// 					if (2 === arguments.length && "string" == typeof e) {
// 						for (t = 0; t < this.length; t++) this[t].style[e] = a;
// 						return this
// 					}
// 					return this
// 				},
// 				each: function (e) {
// 					for (var a = 0; a < this.length; a++) e.call(this[a], a, this[a]);
// 					return this
// 				},
// 				html: function (e) {
// 					if (void 0 === e) return this[0] ? this[0].innerHTML : void 0;
// 					for (var a = 0; a < this.length; a++) this[a].innerHTML = e;
// 					return this
// 				},
// 				text: function (e) {
// 					if (void 0 === e) return this[0] ? this[0].textContent.trim() : null;
// 					for (var a = 0; a < this.length; a++) this[a].textContent = e;
// 					return this
// 				},
// 				is: function (t) {
// 					if (!this[0]) return !1;
// 					var s, i;
// 					if ("string" == typeof t) {
// 						var r = this[0];
// 						if (r === document) return t === document;
// 						if (r === window) return t === window;
// 						if (r.matches) return r.matches(t);
// 						if (r.webkitMatchesSelector) return r.webkitMatchesSelector(t);
// 						if (r.mozMatchesSelector) return r.mozMatchesSelector(t);
// 						if (r.msMatchesSelector) return r.msMatchesSelector(t);
// 						for (s = a(t), i = 0; i < s.length; i++)
// 							if (s[i] === this[0]) return !0;
// 						return !1
// 					}
// 					if (t === document) return this[0] === document;
// 					if (t === window) return this[0] === window;
// 					if (t.nodeType || t instanceof e) {
// 						for (s = t.nodeType ? [t] : t, i = 0; i < s.length; i++)
// 							if (s[i] === this[0]) return !0;
// 						return !1
// 					}
// 					return !1
// 				},
// 				index: function () {
// 					if (this[0]) {
// 						for (var e = this[0], a = 0; null !== (e = e.previousSibling);) 1 === e.nodeType && a++;
// 						return a
// 					}
// 				},
// 				eq: function (a) {
// 					if (void 0 === a) return this;
// 					var t, s = this.length;
// 					return a > s - 1 ? new e([]) : a < 0 ? (t = s + a, new e(t < 0 ? [] : [this[t]])) : new e([this[a]])
// 				},
// 				append: function (a) {
// 					var t, s;
// 					for (t = 0; t < this.length; t++)
// 						if ("string" == typeof a) {
// 							var i = document.createElement("div");
// 							for (i.innerHTML = a; i.firstChild;) this[t].appendChild(i.firstChild)
// 						} else if (a instanceof e)
// 						for (s = 0; s < a.length; s++) this[t].appendChild(a[s]);
// 					else this[t].appendChild(a);
// 					return this
// 				},
// 				prepend: function (a) {
// 					var t, s;
// 					for (t = 0; t < this.length; t++)
// 						if ("string" == typeof a) {
// 							var i = document.createElement("div");
// 							for (i.innerHTML = a, s = i.childNodes.length - 1; s >= 0; s--) this[t].insertBefore(i.childNodes[s], this[t].childNodes[0])
// 						} else if (a instanceof e)
// 						for (s = 0; s < a.length; s++) this[t].insertBefore(a[s], this[t].childNodes[0]);
// 					else this[t].insertBefore(a, this[t].childNodes[0]);
// 					return this
// 				},
// 				insertBefore: function (e) {
// 					for (var t = a(e), s = 0; s < this.length; s++)
// 						if (1 === t.length) t[0].parentNode.insertBefore(this[s], t[0]);
// 						else if (t.length > 1)
// 						for (var i = 0; i < t.length; i++) t[i].parentNode.insertBefore(this[s].cloneNode(!0), t[i])
// 				},
// 				insertAfter: function (e) {
// 					for (var t = a(e), s = 0; s < this.length; s++)
// 						if (1 === t.length) t[0].parentNode.insertBefore(this[s], t[0].nextSibling);
// 						else if (t.length > 1)
// 						for (var i = 0; i < t.length; i++) t[i].parentNode.insertBefore(this[s].cloneNode(!0), t[i].nextSibling)
// 				},
// 				next: function (t) {
// 					return new e(this.length > 0 ? t ? this[0].nextElementSibling && a(this[0].nextElementSibling).is(t) ? [this[0].nextElementSibling] : [] : this[0].nextElementSibling ? [this[0].nextElementSibling] : [] : [])
// 				},
// 				nextAll: function (t) {
// 					var s = [],
// 						i = this[0];
// 					if (!i) return new e([]);
// 					for (; i.nextElementSibling;) {
// 						var r = i.nextElementSibling;
// 						t ? a(r).is(t) && s.push(r) : s.push(r), i = r
// 					}
// 					return new e(s)
// 				},
// 				prev: function (t) {
// 					return new e(this.length > 0 ? t ? this[0].previousElementSibling && a(this[0].previousElementSibling).is(t) ? [this[0].previousElementSibling] : [] : this[0].previousElementSibling ? [this[0].previousElementSibling] : [] : [])
// 				},
// 				prevAll: function (t) {
// 					var s = [],
// 						i = this[0];
// 					if (!i) return new e([]);
// 					for (; i.previousElementSibling;) {
// 						var r = i.previousElementSibling;
// 						t ? a(r).is(t) && s.push(r) : s.push(r), i = r
// 					}
// 					return new e(s)
// 				},
// 				parent: function (e) {
// 					for (var t = [], s = 0; s < this.length; s++) e ? a(this[s].parentNode).is(e) && t.push(this[s].parentNode) : t.push(this[s].parentNode);
// 					return a(a.unique(t))
// 				},
// 				parents: function (e) {
// 					for (var t = [], s = 0; s < this.length; s++)
// 						for (var i = this[s].parentNode; i;) e ? a(i).is(e) && t.push(i) : t.push(i), i = i.parentNode;
// 					return a(a.unique(t))
// 				},
// 				find: function (a) {
// 					for (var t = [], s = 0; s < this.length; s++)
// 						for (var i = this[s].querySelectorAll(a), r = 0; r < i.length; r++) t.push(i[r]);
// 					return new e(t)
// 				},
// 				children: function (t) {
// 					for (var s = [], i = 0; i < this.length; i++)
// 						for (var r = this[i].childNodes, n = 0; n < r.length; n++) t ? 1 === r[n].nodeType && a(r[n]).is(t) && s.push(r[n]) : 1 === r[n].nodeType && s.push(r[n]);
// 					return new e(a.unique(s))
// 				},
// 				remove: function () {
// 					for (var e = 0; e < this.length; e++) this[e].parentNode && this[e].parentNode.removeChild(this[e]);
// 					return this
// 				},
// 				add: function () {
// 					var e, t, s = this;
// 					for (e = 0; e < arguments.length; e++) {
// 						var i = a(arguments[e]);
// 						for (t = 0; t < i.length; t++) s[s.length] = i[t], s.length++
// 					}
// 					return s
// 				}
// 			}, a.fn = e.prototype, a.unique = function (e) {
// 				for (var a = [], t = 0; t < e.length; t++) a.indexOf(e[t]) === -1 && a.push(e[t]);
// 				return a
// 			}, a
// 		}()), s = ["jQuery", "Zepto", "Dom7"], i = 0; i < s.length; i++) window[s[i]] && function (e) {
// 		e.fn.swiper = function (t) {
// 			var s;
// 			return e(this).each(function () {
// 				var e = new a(this, t);
// 				s || (s = e)
// 			}), s
// 		}
// 	}(window[s[i]]);
// 	var r;
// 	r = void 0 === t ? window.Dom7 || window.Zepto || window.jQuery : t, r && ("transitionEnd" in r.fn || (r.fn.transitionEnd = function (e) {
// 		function a(r) {
// 			if (r.target === this)
// 				for (e.call(this, r), t = 0; t < s.length; t++) i.off(s[t], a)
// 		}
// 		var t, s = ["webkitTransitionEnd", "transitionend", "oTransitionEnd", "MSTransitionEnd", "msTransitionEnd"],
// 			i = this;
// 		if (e)
// 			for (t = 0; t < s.length; t++) i.on(s[t], a);
// 		return this
// 	}), "transform" in r.fn || (r.fn.transform = function (e) {
// 		for (var a = 0; a < this.length; a++) {
// 			var t = this[a].style;
// 			t.webkitTransform = t.MsTransform = t.msTransform = t.MozTransform = t.OTransform = t.transform = e
// 		}
// 		return this
// 	}), "transition" in r.fn || (r.fn.transition = function (e) {
// 		"string" != typeof e && (e += "ms");
// 		for (var a = 0; a < this.length; a++) {
// 			var t = this[a].style;
// 			t.webkitTransitionDuration = t.MsTransitionDuration = t.msTransitionDuration = t.MozTransitionDuration = t.OTransitionDuration = t.transitionDuration = e
// 		}
// 		return this
// 	}), "outerWidth" in r.fn || (r.fn.outerWidth = function (e) {
// 		return this.length > 0 ? e ? this[0].offsetWidth + parseFloat(this.css("margin-right")) + parseFloat(this.css("margin-left")) : this[0].offsetWidth : null
// 	})), window.Swiper = a
// }(), "undefined" != typeof module ? module.exports = window.Swiper : "function" == typeof define && define.amd && define([], function () {
// 	"use strict";
// 	return window.Swiper
// });
//# sourceMappingURL=maps/swiper.min.js.map


;
(function ($, window, document, undefined) {

	// our plugin constructor
	var OnePageNav = function (elem, options) {
		this.elem = elem;
		this.$elem = $(elem);
		this.options = options;
		this.metadata = this.$elem.data('plugin-options');
		this.$win = $(window);
		this.sections = {};
		this.didScroll = false;
		this.$doc = $(document);
		this.docHeight = this.$doc.height();
	};

	// the plugin prototype
	OnePageNav.prototype = {
		defaults: {
			navItems: 'a',
			currentClass: 'active',
			changeHash: false,
			easing: 'swing',
			filter: '',
			scrollSpeed: 750,
			scrollThreshold: 0.5,
			begin: false,
			end: false,
			scrollChange: false
		},

		init: function () {
			// Introduce defaults that can be extended either
			// globally or using an object literal.
			this.config = $.extend({}, this.defaults, this.options, this.metadata);

			this.$nav = this.$elem.find(this.config.navItems);

			//Filter any links out of the nav
			if (this.config.filter !== '') {
				this.$nav = this.$nav.filter(this.config.filter);
			}

			//Handle clicks on the nav
			this.$nav.on('click.onePageNav', $.proxy(this.handleClick, this));

			//Get the section positions
			this.getPositions();

			//Handle scroll changes
			this.bindInterval();

			//Update the positions on resize too
			this.$win.on('resize.onePageNav', $.proxy(this.getPositions, this));

			return this;
		},

		adjustNav: function (self, $parent) {
			self.$elem.find('.' + self.config.currentClass).removeClass(self.config.currentClass);
			$parent.addClass(self.config.currentClass);
		},

		bindInterval: function () {
			var self = this;
			var docHeight;

			self.$win.on('scroll.onePageNav', function () {
				self.didScroll = true;
			});

			self.t = setInterval(function () {
				docHeight = self.$doc.height();

				//If it was scrolled
				if (self.didScroll) {
					self.didScroll = false;
					self.scrollChange();
				}

				//If the document height changes
				if (docHeight !== self.docHeight) {
					self.docHeight = docHeight;
					self.getPositions();
				}
			}, 250);
		},

		getHash: function ($link) {
			return $link.attr('href').split('#')[1];
		},

		getPositions: function () {
			var self = this;
			var linkHref;
			var topPos;
			var $target;

			self.$nav.each(function () {
				linkHref = self.getHash($(this));
				$target = $('#' + linkHref);

				if ($target.length) {
					topPos = $target.offset().top;
					self.sections[linkHref] = Math.round(topPos);
				}
			});
		},

		getSection: function (windowPos) {
			var returnValue = null;
			var windowHeight = Math.round(this.$win.height() * this.config.scrollThreshold);

			for (var section in this.sections) {
				if ((this.sections[section] - windowHeight) < windowPos) {
					returnValue = section;
				}
			}

			return returnValue;
		},

		handleClick: function (e) {
			var self = this;
			var $link = $(e.currentTarget);
			var $parent = $link.parent();
			var newLoc = '#' + self.getHash($link);

			if (!$parent.hasClass(self.config.currentClass)) {
				//Start callback
				if (self.config.begin) {
					self.config.begin();
				}

				//Change the highlighted nav item
				self.adjustNav(self, $parent);

				//Removing the auto-adjust on scroll
				self.unbindInterval();

				//Scroll to the correct position
				self.scrollTo(newLoc, function () {
					//Do we need to change the hash?
					if (self.config.changeHash) {
						window.location.hash = newLoc;
					}

					//Add the auto-adjust on scroll back in
					self.bindInterval();

					//End callback
					if (self.config.end) {
						self.config.end();
					}
				});
			}

			e.preventDefault();
		},

		scrollChange: function () {
			var windowTop = this.$win.scrollTop();
			var position = this.getSection(windowTop);
			var $parent;

			//If the position is set
			if (position !== null) {
				$parent = this.$elem.find('a[href$="#' + position + '"]').parent();

				//If it's not already the current section
				if (!$parent.hasClass(this.config.currentClass)) {
					//Change the highlighted nav item
					this.adjustNav(this, $parent);

					//If there is a scrollChange callback
					if (this.config.scrollChange) {
						this.config.scrollChange($parent);
					}
				}
			}
		},

		scrollTo: function (target, callback) {
			var offset = $(target).offset().top;
			if (!isMobile) {
				var header = $(".header").outerHeight() + $(".leval-menu-flex").outerHeight();
			} else {
				var header = $(".header").outerHeight();
			}

			$('html, body').animate({
				scrollTop: offset - header
			}, this.config.scrollSpeed, this.config.easing, callback);
		},

		unbindInterval: function () {
			clearInterval(this.t);
			this.$win.unbind('scroll.onePageNav');
		}
	};

	OnePageNav.defaults = OnePageNav.prototype.defaults;

	$.fn.onePageNav = function (options) {
		return this.each(function () {
			new OnePageNav(this, options).init();
		});
	};

})(jQuery, window, document);

/*! Lazy Load 1.9.3 - MIT license - Copyright 2010-2013 Mika Tuupola */
! function (a, b, c, d) {
	var e = a(b);
	a.fn.lazyload = function (f) {
		function g() {
			var b = 0;
			i.each(function () {
				var c = a(this);
				if (!j.skip_invisible || c.is(":visible"))
					if (a.abovethetop(this, j) || a.leftofbegin(this, j));
					else if (a.belowthefold(this, j) || a.rightoffold(this, j)) {
					if (++b > j.failure_limit) return !1
				} else c.trigger("appear"), b = 0
			})
		}
		var h, i = this,
			j = {
				threshold: 0,
				failure_limit: 0,
				event: "scroll",
				effect: "show",
				container: b,
				data_attribute: "original",
				skip_invisible: !0,
				appear: null,
				load: null,
				placeholder: ""
			};
		return f && (d !== f.failurelimit && (f.failure_limit = f.failurelimit, delete f.failurelimit), d !== f.effectspeed && (f.effect_speed = f.effectspeed, delete f.effectspeed), a.extend(j, f)), h = j.container === d || j.container === b ? e : a(j.container), 0 === j.event.indexOf("scroll") && h.bind(j.event, function () {
			return g()
		}), this.each(function () {
			var b = this,
				c = a(b);
			b.loaded = !1, (c.attr("src") === d || c.attr("src") === !1) && c.is("img") && c.attr("src", j.placeholder), c.one("appear", function () {
				if (!this.loaded) {
					if (j.appear) {
						var d = i.length;
						j.appear.call(b, d, j)
					}
					a("<img />").bind("load", function () {
						var d = c.attr("data-" + j.data_attribute);
						c.hide(), c.is("img") ? c.attr("src", d) : c.css("background-image", "url('" + d + "')"), c[j.effect](j.effect_speed), b.loaded = !0;
						var e = a.grep(i, function (a) {
							return !a.loaded
						});
						if (i = a(e), j.load) {
							var f = i.length;
							j.load.call(b, f, j)
						}
					}).attr("src", c.attr("data-" + j.data_attribute))
				}
			}), 0 !== j.event.indexOf("scroll") && c.bind(j.event, function () {
				b.loaded || c.trigger("appear")
			})
		}), e.bind("resize", function () {
			g()
		}), /(?:iphone|ipod|ipad).*os 5/gi.test(navigator.appVersion) && e.bind("pageshow", function (b) {
			b.originalEvent && b.originalEvent.persisted && i.each(function () {
				a(this).trigger("appear")
			})
		}), a(c).ready(function () {
			g()
		}), this
	}, a.belowthefold = function (c, f) {
		var g;
		return g = f.container === d || f.container === b ? (b.innerHeight ? b.innerHeight : e.height()) + e.scrollTop() : a(f.container).offset().top + a(f.container).height(), g <= a(c).offset().top - f.threshold
	}, a.rightoffold = function (c, f) {
		var g;
		return g = f.container === d || f.container === b ? e.width() + e.scrollLeft() : a(f.container).offset().left + a(f.container).width(), g <= a(c).offset().left - f.threshold
	}, a.abovethetop = function (c, f) {
		var g;
		return g = f.container === d || f.container === b ? e.scrollTop() : a(f.container).offset().top, g >= a(c).offset().top + f.threshold + a(c).height()
	}, a.leftofbegin = function (c, f) {
		var g;
		return g = f.container === d || f.container === b ? e.scrollLeft() : a(f.container).offset().left, g >= a(c).offset().left + f.threshold + a(c).width()
	}, a.inviewport = function (b, c) {
		return !(a.rightoffold(b, c) || a.leftofbegin(b, c) || a.belowthefold(b, c) || a.abovethetop(b, c))
	}, a.extend(a.expr[":"], {
		"below-the-fold": function (b) {
			return a.belowthefold(b, {
				threshold: 0
			})
		},
		"above-the-top": function (b) {
			return !a.belowthefold(b, {
				threshold: 0
			})
		},
		"right-of-screen": function (b) {
			return a.rightoffold(b, {
				threshold: 0
			})
		},
		"left-of-screen": function (b) {
			return !a.rightoffold(b, {
				threshold: 0
			})
		},
		"in-viewport": function (b) {
			return a.inviewport(b, {
				threshold: 0
			})
		},
		"above-the-fold": function (b) {
			return !a.belowthefold(b, {
				threshold: 0
			})
		},
		"right-of-fold": function (b) {
			return a.rightoffold(b, {
				threshold: 0
			})
		},
		"left-of-fold": function (b) {
			return !a.rightoffold(b, {
				threshold: 0
			})
		}
	})
}(jQuery, window, document);